네트워크 계층은 데이터 전송의 경로를 결정 (Routing) 하고, 데이터 패킷을 목적지에 전달하는 역할을 담당한다.
IP란 Internet Protocol의 약자로 데이터를 패킷으로 나누어 네트워크를 통해 전달하는 프로토콜이다. ip 주소는 인터넷에 연결하는 장치와 도메인에 할당된 고유 식별자로, 주소의 지정과 데이터그램의 라우팅에 사용된다.
일반적으로 사용되는 전송 프로토콜은 TCP와 UDP이다.
전송 제어 프로토콜(TCP)은 데이터 송수신 방법을 지정하며, 수신자와의 연결을 설정하는 연결성을 가진 프로토콜이다.
TCP는 전송이 시작되면 모든 패킷이 순서대로 도착하도록 보장한다. 수신자는 TCP를 통해 도착하는 각 패킷 수신을 확인하여 수신이 확인되지 않은 경우 누락된 패킷에 대한 재전송을 요청한다.
TCP는 속도 성능이 아닌 연결성을 통한 안정성을 위해 설계되었다. TCP는 모든 패킷이 순서대로 도착하는지 확인해야 하므로 일부 패킷이 누락된 경우 TCP/IP를 통해 데이터를 로드하는 데 시간이 더 오래 걸린다.
사용자 데이터그램 프로토콜(UDP)은 또 다른 널리 사용되는 프로토콜로, TCP보다 빠르지만, 안정성이 떨어진다. UDP는 패킷이 순서대로 모두 전달되는지 확인하지 않으며 전송을 시작하거나 수신하기 전에 연결을 설정하지 않는다.
IP 주소는 IPv4와 IPv6 중 어떤 프로토콜을 사용하는지에 따라 형식이 다르다.
IPv4는 1983년부터 실행되었으며, 점으로 구분된 네 개의 숫자 형식으로 XXX.X.X.X 와 같이 구성된다. 형식을 보면 알 수 있듯이, 32비트 형식이므로, 약 43억 개의 고유 IP 주소 할당이 가능하다.
IPv6는 기존의 IPv4만으로는 할당할 ip 주소가 충분하지 않고 더 많은 주소가 필요한 요구 때문에, 보다 더 복잡한 형식으로 사용된다. 숫자와 문자가 하나/둘의 콜론으로 구분된다.
(ex. '2001:0db8:85a3:0000:0000:8a2e:0370:7334'). 128비트 형식을 통해 훨씬 더 많은 주소 할당의 요구를 만족할 수 있다.
IPv6는 보안 및 개인 정보 보호 등의 측면에서도 IPv4에서 개선된 버전이다. 다만 IPv4에 대해 웹에서 상당히 많은 부분이 여전히 사용하고 있기 때문에, IPv4와 IPv6 장치 간의 통신을 용이하게 하는 것으로 절충이 되었다.
IPv4는 주소가 부족하기 때문에 IP 주소를 동적으로 지정하게 된다.
동적 IP는 네트워크 장치가 인터넷에 연결될 때 DHCP(동적 호스트 구성 프로토콜) 서버에 의해 자동으로 할당되는 IP 주소이다. 추가 비용없이 비용 효율성 면에서 장점이 있다.
라우팅은 데이터 패킷이 출발지에서 목적지로 전달될 때 최적의 경로를 결정하는 과정이다. 라우팅은 데이터 전송의 효율성을 높이고, 네트워크 성능을 최적화하는 역할을 담당하기 때문에 중요하다.
라우터는 라우팅 테이블을 참고하여 데이터 패킷이 통과할 최적의 경로를 선택한다.
선택된 경로를 따라 데이터 패킷을 다음 홉(next hop)으로 전달한다.
라우터는 라우팅 프로토콜을 통해 네트워크 상태 변화를 감지하고, 라우팅 테이블을 주기적으로 갱신한다.