欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

9.1.2 TCP/IP

程序员文章站 2022-06-07 12:49:57
...

Transmission Control Protocol/Internet Protocol; 1. TCP/IP协议介绍 TCP/IP(又称TCP/IP协议簇)是一组用于实现网络互连的通信协议,其名称来源于该协议簇中两个重要的协议(IP协议和TCP协议)。基于TCP/IP的参考模型将协议分成四个层次,它们分别是网络

Transmission Control Protocol/Internet Protocol;

1. TCP/IP协议介绍

TCP/IP(又称TCP/IP协议簇)是一组用于实现网络互连的通信协议,其名称来源于该协议簇中两个重要的协议(IP协议和TCP协议)。基于TCP/IP的参考模型将协议分成四个层次,它们分别是网络接口层、网际互连层(IP层)、传输层(TCP层)和应用层。图17-4画出了TCP/IP模型以及该模型与OSI模型各层的对照关系。

9.1.2 TCP/IP

图17-4 OSI模型与TCP/IP模型对照图

① 网络接口层:网络接口层与OSI参考模型中的物理层和数据链路层相对应。

② 网际互联层:网际互联层对应于OSI参考模型的网络层,主要解决主机到主机的通信问题。该层有四个主要协议:网际协议(IP)、地址解析协议(ARP)、互联网组管理协议(IGMP)和互联网控制报文协议(ICMP)。IP协议是网际互联层最重要的协议,它提供的是一个不可靠、无连接的数据报传递服务。

③ 传输层:传输层对应于OSI参考模型的传输层,为应用层实体提供端到端的通信功能。该层定义了两个主要的协议:传输控制协议(TCP)和用户数据报协议(UDP)。TCP协议提供的是一种可靠的、面向连接的数据传输服务;而UDP协议供的是不可靠的、无连接的数据传输服务。

④ 应用层:应用层对应于OSI参考模型的会话层、表示层和应用层,为用户提供所需要的各种服务,例如FTP、Telnet、DNS、SMTP等。

2. OSI模型与TCP/IP模型比较说明

(1)OSI模型与TCP/IP模型比较说明

OSI引入了服务、接口、协议、分层的概念,TCP/IP借鉴了OSI的这些概念建立TCP/IP模型。OSI先有模型,后有协议,先有标准,后进行实践;而TCP/IP则相反,先有协议和应用再提出了模型,且是参照的OSI模型。OSI太复杂,TCP/IP简单却并不全面。OSI花了很长时间进行标准化,与此同时,TCP/IP已被广泛使用,已成为网络互联事实上的标准。

(2)OSI模型与TCP/IP模型

表17-1列出了OSI模型与TCP/IP模型的协议对照及协议说明。

表17-1 OSI模型与TCP/IP模型协议对照表

OSI中的层

功能

TCP/IP协议簇

应用层

文件传输,电子邮件,文件服务,虚拟终端

TFTP、HTTP、SNMP、FTP、SMTP、DNS、Telnet

表示层

数据格式化,代码转换,数据加密

没有协议

会话层

解除或建立与别的接点的联系

没有协议

传输层

提供端对端的接口

TCP、UDP

网络层

为数据包选择路由

IP、ICMP、OSPF、BGP、IGMP 、ARP、RARP

数据链路层

传输有地址的帧以及错误检测功能

SLIP、PPP、MTU

物理层

以二进制数据形式在物理媒体上传输数据

ISO2110、IEEE802、IEEE802.2

3. TCP/IP通信过程图

下图17-5画出了两台主机通过TCP/IP协议的通信过程,其中应用层使用的是FTP协议。除物理层是实际传输数据的,其他对等层只是虚拟通信(所以画的是虚线),对等层一般需要遵照相同的协议。上层传输数据只与相邻上下层有关系。TCP及以下层是由操作系统内核实现,是处理通信细节。而应用层程序是通过socket编程实现的,处理的是应用程序细节。

9.1.2 TCP/IP

图17-5 TCP/IP通信过程图

4. TCP/IP数据包

TCP/IP数据包说明如图17-6所示。IP层传输单位是IP分组,属于点到点的传输;TCP层传输单位是TCP段,属于端到端的传输。

9.1.2 TCP/IP

图17-6 TCP/IP数据包说明图

摘录自《深入浅出Linux工具与编程》