Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 99클럽
- 전략패턴 #StrategyPattern #디자인패턴
- 구글 OAuth login
- KPT회고
- 항해99
- 프로그래머스
- 인프콘 2024
- spring batch 5.0
- jwttoken
- JavaScript
- 빈 충돌
- 파이썬
- Python
- TiL
- 디자인패턴
- 1주일회고
- 디자인 패턴
- Spring multimodule
- infcon 2024
- @FeignClient
- 개발자부트캠프추천
- 프로그래머스 이중우선순위큐
- jwt
- 취업리부트코스
- 개발자 취업
- 커스텀 헤더
- 빈 조회 2개 이상
- DesignPattern
- 단기개발자코스
- 코딩테스트 준비
Archives
- Today
- Total
m1ndy5's coding blog
네트워크 기초(정의 & OSI 7 계층) 본문
네트워크란?
- 컴퓨터 간 통신 기술을 이용하여 파일 공유를 가능하게 해주는 그물망처럼 연결된 통신 이용 형태
LAN
- 조직 내부나 동일 건물 등 비교적 좁은 지역을 연결하는 네트워크
- 공유기나 스위치를 이용해서 연결함
- 처음 구성할 때의 비용, 전기세 빼고는 유지보수 비용이 들진 않음
- 이더넷이라는 프로토콜을 주로 사용
- WAN에 비해 빠름
WAN
- LAN과 LAN을 잇는 광범위한 지역 단위로 구성하는 네트워크
- 초기 설치 비용은 적게 들지만 유지 비용이 많이 듦
- ISP(Internet Service Provider)에서 관리를 하기 때문에 관리가 용이함
- 속도 LAN에 비해 느림
Internet이란?
- 전세계적으로 LAN과 WAN이 얽혀있는 네트워크
Protocol이란?
- 컴퓨터나 네트워크 장비가 서로 통신하기 위해 미리 정해놓은 모든 논리적/물리적 규칙
- 인터넷 표준 프로토콜 : TCP/IP
- TCP/IP를 사용하는 모든 장치들은 반드시 IP 주소가 할당되어 있어야 함
OSI 7 계층
- ISO(국제표준화기구)에서 internetworking에 사용하기 위한 목적의 연구로 만들어진 모델
- 근데 연구하는 동안 이미 TCP/IP가 인터넷 표준 프로토콜이 되버림
- OSI는 실제 프로토콜로 구현된 경우는 거의 없고, 연구용/학습용/개발 목적의 'Reference(참조) Model'로 활용되고 있음
- 위 사진으로 볼 수 있듯이 tcp/ip에서는 5,6,7계층을 나눌 수 있는 뚜렷한 기준은 없고 묶어서 애플리케이션 계층으로 부른다.
1Layer : Physical Layer
- 통신 케이블로 데이터를 전송하는 물리적인 계층
- 전기 신호(0,1)로 변환해서 데이터를 주고 받음 (Line Coding)
- 전송되는 단위 : 비트
- ex) 통신케이블, 리피터, 허브 등
2Layer : DataLink Layer
- 통신의 흐름을 관리
- 전송되는 단위 : 프레임 (L2 헤더 + L3 헤더 + L4 헤더 + Data + FCS)
- 프레임에 물리적 주소(MAC 주소)를 부여하고 에러검출, 재전송, 흐름제어를 함
- ex) 스위치, 이더넷(LAN 구간 프로토콜은 MAC 주소를 사용) 등
- 맥주소란?*
- LAN 구간 프로토콜에서 사용되는 물리적 주소
- 이더넷 방식의 어댑터에는 고유한 MAC 주소가 할당되어 있음
- ex) PC의 랜카드, 라우터의 이더넷 인터페이스 등
- 장비를 생산하는 회사에서 MAC 주소를 부여함
- 48bit의 이진수로 구성되어 있음 사람이 관리하기 편하도록 12자리의 16진수로 표현
- 48bit의 이진수 중 앞의 24bit는 해당 장치를 생산한 회사의 고유 ID(OUI)를 의미하고 뒤의 24bit는 해당 장치만의 고유 ID(Host ID)를 의미
3Layer : Network Layer
- 논리적 주소를 사용하여 데이터를 목적지까지 안전하고 빠르게 전달
- 라우터를 통해 목적지 IP와 라우팅 테이블을 비교하여 최적 경로로 전송하는 역할을 함 -> 라우팅 -> 이때 ip헤더 붙음
- 전송되는 단위 : 패킷 (L3헤더 + L4헤더 + Data)
- ex) 라우터 / L3 스위치
4Layer : Transport Layer
- 포트 번호와 전송방식(TCP/UDP)를 결정함
- 간단하게 TCP는 신뢰성이 있고 UDP에 비해 느리고 연결이 되어있어야만 데이터를 보냄(연결지향성), UDP는 신뢰성이 떨어지는 대신 TCP보다 빠르고 연결이 되어있지 않아도 데이터를 보내는 (비연결지향성) 특징이 있다.
- 포트번호 범위 : 0 ~ 65535
- Well-known : 0 ~ 1023 -> 대표적인 예로 SSH 22, HTTP 80, HTTPS 443, DNS 53 등이 있다.
- Registered : 1024 ~ 49151 -> 대표적인 예로 3306 MYSQL 등이 있다.
- Dynamic : 49152 ~ 65535 -> 출발지 포트를 설정할 때 보통 dynamic 포트를 사용한다.
- TCP헤더가 붙으면 Segment, UDP헤더가 붙으면 Datagram이라고 한다.
- ex) L4 Switch(로드밸런서)
TCP/IP와 OSI모델
- 실제로 사용하는건 TCP/IP이고 OSI 모델을 보면 더 자세히 설명이 가능한 관계라고 생각하면 된다.
- osi 5, 6, 7계층이 TCP/IP의 애플리케이션 계층이라고 표현되는 거처럼 계층에 걸쳐있을 수 있다.
그 외 Route53과 관련된 질문
- 인스턴스에 53포트를 열어주는 인바운드 규칙을 추가한적이 없는데 왜 매핑이 되는지?
- 사용자가 도메인을 입력 -> route53에서 그 도메인과 연결된 ip를 넘겨줌 -> 사용자가 그 ip를 받아서 웹서버에 접근
'클라우드 with AWS > Network' 카테고리의 다른 글
URL vs URI vs URN (0) | 2023.06.23 |
---|---|
네트워크 진단 도구 (0) | 2023.03.12 |
TCP VS UDP, 그 외의 다양한 네트워크 프로토콜 (1) | 2023.03.12 |
ABOUT ROUTING, NAT (0) | 2023.03.05 |
ABOUT IP, SUBNET (0) | 2023.03.05 |