TCP/IP 프로토콜
프로토콜은 시스템과 애플리케이션 프로그램에서 정보를 교환할 수 있도록 하는 메시지 형식 및 프로시저에 대한 규칙 세트입니다. 수신 호스트가 메시지를 이해하려면 통신에 관련된 각 시스템이 이러한 규칙을 준수해야 합니다. TCP/IP 프로토콜 스위트는 계층(또는 레벨)이라는 관점에서 이해할 수 있습니다.
이 그림은 TCP/IP 프로토콜의 계층을 보여줍니다. 맨 위에서부터 애플리케이션 계층, 전송 계층, 네트워크 계층, 네트워크 인터페이스 계층, 하드웨어입니다.
TCP/IP는 정보가 발신자에서 수신자로 이동하는 방법을 조심스럽게 정의합니다. 우선 애플리케이션 프로그램은 메시지나 데이터 스트림을 인터넷 전송 계층 프로토콜인 UDP(User Datagram Protocol) 또는 TCP(Transmission Control Protocol) 중 하나로 전송합니다. 해당 프로토콜은 애플리케이션으로부터 데이터를 수신하고 이를 패킷이라 부르는 보다 작은 조각으로 나누어 대상 주소를 추가한 후 다음 프로토콜 계층인 인터넷 네트워크 계층을 따라 패킷을 패스합니다.
인터넷 네트워크 계층은 패킷을 IP(인터넷 프로토콜) 데이터그램에 포함한 후 데이터그램 헤더 및 트레일러에 넣고 데이터그램 전송 위치(대상에 직접 또는 게이트웨이에)를 결정한 후 네트워크 인터페이스 계층으로 데이터그램을 패스합니다.
네트워크 인터페이스 계층은 IP 데이터그램을 승인하고 이더넷이나 토큰 링 네트워크와 같은 특정 네트워크 하드웨어를 통해 이들을 프레임으로 전송합니다.
호스트가 수신한 프레임은 역 방향으로 프로토콜 계층을 이동합니다. 각 계층은 데이터가 애플리케이션 계층에 다시 도달할 때까지 해당 헤더 정보를 스트립합니다.
프레임은 네트워크 인터페이스 계층(이 경우에는 이더넷 어댑터)에서 수신합니다. 네트워크 인터페이스 계층은 이더넷 헤더를 스트립하여 데이터그램을 네트워크 계층으로 전송합니다. 네트워크 계층에서는 인터넷 프로토콜이 IP 헤더를 스트립하고 전송 계층으로 패킷을 전송합니다. 전송 계층에서는 TCP(이 경우)가 TCP 헤더를 스트립하여 애플리케이션 계층으로 데이터를 전송합니다.
네트워크의 호스트는 정보의 전송과 수신을 동시에 수행합니다. 그림 4에서는 통신하는 호스트를 보다 정확하게 보여 줍니다.