TCP/IP分层

五层为:应用层、传输层、网络层、数据链路层、物理层;

七层:应用层、表示层、会话层、传输层、网络层、数据链路层、物理层; 

应用层;

包括:telnet,ftp,e-mail等

与其它计算机进行通讯的一个应用,它是对应应用程序的通信服务的。例如,一个没有通信功能的字处理程序就不能执行通信的代码,从事字处理工作的程序员也不关心OSI的第7层。但是,如果添加了一个传输文件的选项,那么字处理器的程序员就需要实现OSI的第7层。示例:telnet,HTTP,FTP,NFS,SMTP等。

表示层:

这一层的主要功能是定义数据格式及加密。例如,FTP允许你选择以二进制或ASCII格式传输。如果选择二进制,那么发送方和接收方不改变文件的内容。如果选择ASCII格式,发送方将把文本发送方的字符集转换成标准的ASCII后发送数据。在接收方将标准的ASCII转换成接收方计算机的字符集。示例:加密,ASCII等。

会话层:

它定义了如何开始、控制和结束一个会话,包括对多个双向消息的控制和管理,以便在只完成连续消息的一部分时可以通知应用,从而使表示层看到的数据是连续的,在某些情况下,如果表示层收到了所有的数据,则用数据代表表示层。示例:RPC,SQL等。

传输层:

主机间应用程序的通信,包括TCP、UDP;TCP是面向字符流的传输,传输前必须先建立链接通道,建立过程3次握手,TCP是可靠传输协议,若接收方接收之后发现传输有错,那么所有的TCP传输数据报文必须重传,这个可以用MTU解释,TCP首部由20字节组成,并且所有的数据都必须经过CRC校验,若接收方的校验码不相同,则需要重传,其错误机制是根据ICMP传输,关闭过程需要4次握手,不可达情况是ICMP传送主机不可达信号(NO answer);UDP是面向数据报的传输,传输不需要建立链接,接收若有错误也不需要重传,UDP首部由8字节组成,其可靠性只能通过应用层保证;

网络层:

包括IP报与ICMP;ICMP即可以放在传输层,也可以放在网络层,放在传输层的依据是其需要IP报封装,放在网络层的依据是其信息不需要给传输层处理;ICMP主要起控制功能,差错传输等,例如在ping命令,traceroute命令等都是通过ICMP控制信号传输;

链路层:

包括:ARP和RARP,ARP主要是IP地址与MAC地址的一种映射过曾,RARP主要是针对没有存储功能设备,其不能设别自己的MAC地址,需要通过发送RARP命令给MAC服务器,MAC服务器再把数据传输给主机;


### TCP/IP协议分层模型各层功能详解 #### 三层:网络接口层 网络接口层对应于OSI模型的数据链路层和物理层。这一层主要负责接收来自互联网层的IP数据报并通过特定的物理网络传送出去,或者从物理网络上接收帧并传送给互联网层。该层定义了如何使用硬件来寻址、传输数据以及检测错误。 #### 二层:互联网层 互联网层的主要职责在于处理分组在网络间的转发问题[^4]。此层的关键协议是IP(Internet Protocol),它提供了无连接的服务用于在不同网络之间传递信息。除了基本的数据包传输外,还涉及路由选择算法以决定最佳路径让消息到达目的地。其他重要成员包括ICMP(因特网控制报文协议)、ARP(地址解析协议)等辅助工具。 #### 一层:传输层 传输层位于TCP/IP架构中的第三级位置,其核心作用是在源端与目的端主机的应用程序间建立逻辑通信信道,并确保可靠地发送字节流。这里有两个重要的协议——TCP(Transmission Control Protocol) 和 UDP(User Datagram Protocol)[^2]。前者提供面向连接、可靠的双向字节流传送机制;后者则是基于尽力而为的原则工作,不保证顺序性和可靠性但是效率更高。 #### 零层:应用层 最顶层即为应用层,它是直接面对用户的部分,包含了大量高层应用程序和服务接口。这些软件组件利用下层所提供的能力完成具体的业务需求,比如文件传输FTP、电子邮件SMTP、网页浏览HTTP(S)等等。此外,在某些情况下也需要考虑会话管理和数据表示等问题,这涉及到类似于OSI模型中提到的会话层和表示层的功能。 ```python import socket # 创建一个TCP/IP套接字对象 sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 绑定到本地地址和端口 server_address = ('localhost', 10000) print('starting up on {} port {}'.format(*server_address)) sock.bind(server_address) # 开始监听进入的连接请求 sock.listen(1) ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值