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

TCP/IP初识

程序员文章站 2024-02-01 23:52:58
...
目前因项目功能涉及了基于TCP/IP 协议的通讯功能,之前只专注于web 、webservice 的开发,没有具体了解过TCP/IP ,所以翻阅了一些资料,在些初步总结一下。


TCP/IP是“transmission Control Protocol/Internet Protocol”的简写,中文译名为传输控制协议/互联网络协议)协议, TCP/IP(传输控制协议/网间协议)是一种网络通信协议,它规范了网络上的所有通信设备,尤其是一个主机与另一个主机之间的数据往来格式以及传送方式。

在数据传送中,可以形象地理解为有两个信封,TCP/IP是INTERNET的基础协议,也是一种电脑数据打包和寻址的标准方法,TCP和IP就像是信封,要传递的信息被划分成若干段,每一段塞入一个TCP信封,并在该信封面上记录有分段号的信息,再将TCP信封塞入IP大信封,发送上网;IP 主要就是用来识别目的服务器,而TCP就是相当于得到服务器后找到相应的端口,而找到新的线程来处理相应的数据。

TCP/IP协议所对应的参考模型是首先由ARPANET所使用的网络体系结构。这个体系结构在它的两个主要协议出现以后被称为TCP/IP参考模型(TCP/IP Reference Model)。这一网络协议共分为四层:网络访问层、互联网层、传输层和应用层,如下图
TCP/IP初识
            
    
    博客分类: TCP/Ip TCP/IP互联网web开发 
TCP/IP网络层
而TCP/IP所对应的四层和网络模型还不尽相同,网络模型主要是七层,如下图:
TCP/IP初识
            
    
    博客分类: TCP/Ip TCP/IP互联网web开发 
开放系统互连参考模型
TCP/IP 的四层和网络模型主要有以下区别:

OSI中的层
功能
TCP/IP协议族
应用层
文件传输,电子邮件,文件服务,虚拟终端
TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet 等等
表示层
数据格式化,代码转换,数据加密
没有协议
会话层
解除或建立与别的接点的联系
没有协议
传输层
提供端对端的接口
TCP,UDP
网络层
为数据包选择路由
IP,ICMP,OSPF,EIGRP,IGMP
数据链路层
传输有地址的帧以及错误检测功能
SLIP,CSLIP,PPP,MTU
物理层
以二进制数据形式在物理媒体上传输数据
ISO2110,IEEE802,IEEE802.2
另外,TCP/IP属于是端对端之间的通信,它不会依赖于任何特定的计算机硬件或操作系统,其数据格式为:

数据帧:帧头+IP数据包+帧尾 (帧头包括源和目标主机MAC地址及类型,帧尾是校验字)
IP数据包:IP头部+TCP数据信息(IP头包括源和目标主机IP地址、类型、生存期等)
TCP数据信息:TCP头部+实际数据 (TCP头包括源和目标主机端口号、顺序号、确认号、校验字等)

TCP/IP提供了高可靠性的数据通信。