UDP是简单的,不可靠的数据报协议,而TCP是精致的,可靠的字节流协议。SCTP跟TCP类似也是可靠的传输协议,但它还提供消息边界,传输层支持多宿主,最小化拥塞。UDP(用户数据报协议):提供无连接的服务,同一个套接口可以发送数据报给不同的服务器,也可以在同一个套接口接收来自不同服务器的数据报。TCP(传输控制协议):一. TCP提供客户与服务器连接。二. 提供可靠性,发过去后需要对方的确认,如果没有收到确认会重传。三. TCP通过给所发送数据的每一个字节关联一个序列号进行排序。接收方的TCP将根据分节的序列号重新排序在将结果数据传递给应用进程。四. 提供流量控制。通告窗口(advertised window)告诉对方它能接收多少字节的数据。缓冲区满时,必须等应用程序取走数据后才能再接收五. TCP是全双工的TCP建立连接的三路握手1. 服务器通过调用socket, bind, listen 函数来完成被动打开;2. 客户通过connect进行主动打开,引起TCP发送一个SYN分节,告诉服务器客户将在连接中发送的数据的初始序列号,3. 服务器必须确认客户的SYN,同时自己发送一个SYN,含有服务器在连接中发送的数据的初始序列号,同时发送对客户SYN的ACK。4. 客户确认服务器的SYN。SYN使用的TCP选项:MSS选项。 通知对象自己的最大分节大小,即能接受的每个TCP分节中的最大数据量窗口规模选项。 只有对方收到对方的SYN来的这个选项时,才能发送该选项。时间戳选项。高带宽或长延时的网络才会用到后两个选项。TCP连接终止:1. 某个进程先调用close(主动关闭)。发送一个FIN,表示数据发送完毕。2. 另一端收到后被动关闭,由TCP确认FIN,它的接收也作为文件结束符接收方应用程序。3. 收到文件结束符的应用程序将调用close关闭套接口,导致它的TCP也发送一个FIN。4. 收到这个FIN的原发送方对它确认。
| 【内容导航】 |
| 第1页:TCP/UDP基础知识 | 第2页:socket相关函数介绍 |
| 第3页:文件操作相关函数以及FTP原理介绍 | |
Linux创建软RAID和LVM的顺序如何在Ubuntu上安装Node.js相关资讯 Linux基础教程
- Linux基础教程:对文件打包压缩 (03月08日)
- 基础教程:Linux 新手应该知道的 (09/06/2015 21:17:20)
- Linux基础教程:find 与 xargs (04/05/2015 10:20:11)
| - Linux基础教程:tar 命令使用介绍 (12/03/2015 13:19:47)
- Linux基础教程(1)操作系统基础 (08/15/2015 20:44:01)
- Linux基础教程:从源码安装软件 (04/05/2015 10:14:45)
|
本文评论 查看全部评论 (0)