반응형
LAN을 넘어서 다른 네트워크와 통신하기 위해서는 네트워크 계층의 역할이 필수적이다
데이터 링크 계층의 한계
아래의 이유들로 물리 계층과 데이터 링크 계층만으로 다른 도시나 국가에 있는 사람과 통신하기 어려움
1. 물리 계층과 데이터 링크 계층만으로는 다른 네트워크까지의 도달 경로를 파악하기 어려움
- 물리 계층과 데이터 링크 계층은 기본적으로 LAN을 다루는 계층으로 지구 반대편에 있는 사람의 컴퓨터와 정보를 주고 받으려면, 서로에게 도달하기까지 수많은 네트워크 장비를 거치며 다양한 경로를 통해 정보가 이동
- 통신을 빠르게 주고받으려면 최적의 경로로 패킷이 이동해야하는데 이를 결정하는 것을 라우팅(routing)이라고 함
- 물리계층과 데이터 링크 계층의 장비로는 라우팅을 수행할 수 없지만, 네트워크 계층의 장비로는 가능한데 대표적인 장비로 라우터(router)가 있음
2. MAC 주소만으로는 모든 네트워크에 속한 호스트의 위치를 특정하지 어려움
- 현실적으로 모든 호스트가 모든 네트워크에 속한 모든 호스트의 MAC 주소를 서로 알고 있기 어려움
- 네트워크를 통해 정보를 주고 받는 과정을 택배를 보내고 받는 것에 비유하면, MAC 주소는 네트워크 인터페이스(NIC)마다 할당된 일종의 개인 정보와 같음
- 택배를 보낼 때는 인물을 특정하는 정보 이외에 수신지도 써야 함. 수신지 역할을 하는 것이 네트워크 계층의 IP 주소
- IP주소는 논리주소라고도 부르며, NIC마다 할당되는 고정된 주소인 MAC 주소와 달리, IP 주소는 호스트에 직접 할당 가능
인터넷 프로토콜(Internet Protocol, IP)
- 2가지 버전이 있음 IP버전 4(IPv4)와 IP버전 6(IPv6). 일반적으로 IP 혹은 IP 주소를 이야기할 때 주로 IPv4를 의미
IP 주소 형태
- 4바이트로 주소를 표현할 수 있고 숫자당 8비트로 표현되기에 0~255 범위안에 있는 4개의 10진수로 표기
- 각 10진수는 점으로 구분되며, 점으로 구분된 8비트를 옥텟(octet)이라고 함
ex) 192.168.1.1
IP의 2가지 기능
- IP 주소 지정 (IP addressing)
- IP 주소를 바탕으로 송수신 대상을 지정하는 것을 의미
- IP 단편화 (IP Fragmentation)
- 전송하고자 하는 패킷의 크기가 MTU라는 최대 전송 단위보다 클 경우, 이를 MTU 크기 이하의 복수의 패킷으로 나누는 것을 의미
- MTU란 Maximum Transmission Unit이란 뜻으로 한 번에 전송 가능한 IP 패킷의 최대 크기를 의미하며 일반적으로 1500 바이트
IPv4
- IPv4 패킷은 프레임의 페이로드로 데이터 필드를 명시
핵심 필드
- 식별자(Identifier)
- 패킷에 할당된 번호로 MTU를 초과하여 쪼개져서 수신지로 도착한 IPv4 패킷들이 어떤 메시지에서 쪼개졌는지 알기 위해 사용
- 플래그(Flag)
- 총 3개 비트로 구성
- 첫번째 비트는 항상 0으로 예약된 비트로 사용되지 않음
- 비트중 DF(Don’t Fragment)는 IP 단편화 수행 여부를 나타내는 표시로, 1이면 단편화 수행 X, 0이면 단편화 가능
- MF(More Fragment)는 단편화된 패킷이 더 있는지를 나타내는데 1이면 패킷이 더 있음을 나타내고 0이면 이 패킷이 마지막을 나타냄
- 단편화 오프셋(Fragment offset)
- 초기 데이터에서 몇 번째로 떨어진 패킷인지를 나타냄
- 쪼개진 패킷들은 같은 순서대로 수신지에 도착하지 않을 수 있음
- 수신지가 패킷들을 순서대로 재조합하려면 단편화된 패킷이 초기 데이터에서 몇번째 해당하는 패킷인지 알아야 함
- TTL(Time To Live)
- 패킷의 수명
- 무의미한 패킷이 네트워크 상에 지속적으로 남아있는 것을 방지하기 위해 존재
- 패킷이 하나의 라우터를 거칠때마다 TTL이 1씩 감소, TTL이 0으로 떨어진 패킷은 폐기
- 홉(hop): 패킷이 호스트 또는 라우터에 한번 전달되는 것으로 TTL 필드 값은 홉마다 1씩 감소
- 프로토콜
- 상위 계층에 프로토콜을 나타냄
- 송신지 IP 주소
- 수신지 IP 주소
IPv6
- 이론적으로 할당 가능한 IPv4 주소 개수는 4바이트(32비트)로 표현가능한 숫자이므로 약 43억개
- 시간이 지나면서 부족한 숫자가 되고 IPv4의 주소의 총량은 쉽게 고갈되어 이 문제를 해결하고자 IPv6가 등장
- 16바이트로 주소를 표현할 수 있고 콜론(:) 으로 구분된 8개 그룹의 16진수로 표기
1050:0000:0000:0000:0005:0600:300c:326b
핵심필드
- 다음 헤더(next header)
- 상위 계층의 프로토콜 또는 확장 헤더를 가리키거나 확장 헤더를 가리킴
- 확장 헤더란 기본 헤더 이외에 추가정보가 필요한 경우 사용하는 헤더
- 수신지에서만 패킷을 검사하도록 하는 수신지 옵션, 송신지에서 수신지에 이르는 모든 경로의 네트워크 장비가 패킷을 검사하도록 하는 홉 간 옵션 등이 있음
- 홉 제한
- IPv4 패킷의 TTL 필드와 비슷하게 패킷의 수명을 나타내는 필드
References
반응형
'Network' 카테고리의 다른 글
[책리뷰] 혼자 공부하는 네트워크 ch3. 클래스풀 주소 체계 (0) | 2024.11.24 |
---|---|
[책리뷰] 혼자 공부하는 네트워크 ch3. ARP(Address Resolution Protocol) (0) | 2024.11.23 |
[책리뷰] 혼자 공부하는 네트워크 ch2.4 스위치 (0) | 2024.11.15 |
[책리뷰] 혼자 공부하는 네트워크 ch2.3 허브 (0) | 2024.11.03 |
[책리뷰] 혼자 공부하는 네트워크 ch2.2 NIC와 케이블 (0) | 2024.11.03 |