1.OSI的七层协议
7 应用层 |
---|
6 表示层 |
5 会话层 |
4 运输层 |
3 网络层 |
2 数据链路层 |
1 物理层 |
2.TCP/IP的四层协议
4 应用层 (各种应用层协议如TELNET,FTP,SMTP等) |
---|
3 运输层(TCP或UDP) |
2 网际层 IP |
1 网络接口层 |
3.五层协议
5 应用层 |
---|
4 运输层 |
3 网络层 |
2数据链路层 |
1 物理层 |
什么是TCP/IP协议?
TCP/IP协议是一个网络通信模型,以及一整个网络传输协议家族,为互联网的基础通信架构。它常被通称为TCP/IP协议族,简称TCP/IP。因为该协议家族的两个核心协议:TCP(传输控制协议)和IP(网际协议),为该家族中最早通过的标准。由于在网络通讯协议普遍采用分层的结构,当多个层次的协议共同工作时,类似计算机科学中的堆栈,因此又被称为TCP/IP协议栈。
TCP/IP运输层的两个主要协议
- UDP 用户数据报协议
- TCP 传输控制协议
UDP 用户数据报协议
主要特点:
- UDP是无连接的,即发送数据之前不需要建立连接,因此减少了开销和发送数据之前的时延
- UDP使用尽最大努力交付,即不保证可靠交付,因此主机不需要维持复杂的连接状态表(这里面有许多的参数)。
- UDP是面向报文的,发送方的UDP对应用程序交下来的报文,在添加首部后就向下交付IP层。UDP对应用层交下来的报文,既不合并,也不拆分,而是保留这些报文的边界。
- UDP没有拥塞控制,因此网络出现的拥塞不会使源主机的发送效率降低。这对某些实时应用是很重要的。很多实时的应用(如IP电话、实时视频会议等)要求源主机以恒定的速率发送数据,并且允许在网络发生拥塞时丢失一些数据,但不允许数据有太大的时延。
- UDP支持一对一、一对多、多对一和多对多的交互通信。
- UDP的首部开销小,只有8个字节,比TCP的20个字节的首部要短。
TCP 传输控制协议
主要特点:
- TCP是面向连接的运输层协议。这就是说,应用程序在使用TCP协议之前,必须先建立TCP连接。在传送数据完毕后,必须释放已经建立的TCP连接。
- 每一条TCP连接只能有两个端点,每一条TCP连接只能是点对点的(一对一)。
- TCP提供可靠交付的服务。通过TCP连接传送的数据,无差错、不丢失、不重复,并且按序到达。
- TCP提供全双工通信。TCP允许通信双方的应用进程在任何时候都能发送数据。TCP连接的两端都设有发送缓存和接收缓存,用来临时存放双向通信的数据。在发送时应用程序在把数据传送给TCP的缓存后,就可以做自己的事,而TCP在合适的时候把数据发送出去。在接收时,TCP把收到的数据放入缓存,上层的应用进程在合适的时候读取缓存中的数据。
- TCP面向字节流。TCP中的“流”指的是流入到进程或从进程中流出的的字节序列。“面向字节流”的含义是:虽然应用程序和TCP的交互是一次一个数据块(大小不等),但TCP把应用程序交下来的数据仅仅看成是一连串的无结构的字节流。