【Windows socket+IP+UDP+TCP】网络基础
2014-05-20 13:43
483 查看
Windows Socket+网络
Winsock是 Windows下套接字标准。 Winsock 编程分为UDP【Windows socket + UDP】,TCP【Windows socket + TCP】编程。Windows socket 建立在网络基础之上,UDP编程采用用户数据报协议(User Datagram Protocol ,UDP),TCP编程采用传输控制协议(Transmission Control Protocol,TCP)。UDP,TCP不同的特性,适应不同的应用需求。 UDP,TCP协议建立在网际协议(Internet Protocol,IP)基础上。 1.[b]网际协议(Internet Protocol,IP):[/b] IP协议的功能:相互连接的网络间数据的传输,即从一个IP主机传输到另一个IP主机。IP协议是主机与主机间数据传输协议,只能完成主机到主机间的数据报传输。IP数据报格式如下:
IP首部:IP数据报的信息,包含源IP,目标IP等IP数据,这些IP数据好比信件上的地址,保证数据报传输到目标IP主机上。 IP数据:传输的数据。 IP协议是不可靠协议,可能发生丢包,错误等,不保证数据一定交付到目标主机。 2.用户数据报协议(User Datagram Protocol ,UDP):[b] [/b][b] UDP位于IP协议之上,使用IP作为底层传输协议,UDP将自己的UDP数据报封装于IP数据内传输。[/b]
UDP首部:包含源端口,目标端口等数据。端口保证数据能准确传输到指定的进程。 UDP数据:传输的数据。 UDP基于IP协议,IP协议是不可靠协议,UDP本身没有任何确保可靠的措施,故UDP协议也是不可靠协议。UDP协议适用于对数据可靠性,顺序交付无要求的程序,UDP能提供更快,更小消耗的传输服务。 3.传输控制协议(Transmission Control Protocol,TCP): 同UDP协议,TCP也位于IP协议之上,将TCP数据报封装于IP数据内传输。
TCP首部:相比UDP,TCP同样包含源端口,目标端口等数据的同时,TCP还包含序号,确认号等信息,这些数据用于确认数据是否被完整交付,TCP是可靠协议的原因就在这里。 TCP数据:传输的数据。 TCP虽然建立在不可靠协议IP之上,但TCP采用了多种机制,确保数据有序,可靠的交付。TCP多用于对数据安全要求较高的应用,如Web,电子邮件等。 4.扩展: 这里只是简单的介绍了IP,UDP,TCP协议之间的关系,以及这些协议的特点,无法做到面面俱到。读者有兴趣的话,可以阅读计算机网络相关的书籍,《计算机网络》,《UNIX网络编程》等能解你之惑。
相关文章推荐
- 第10章 网络编程 01_网络基础_IP_TCP_UDP.wmv
- linux网络编程之TCP/IP基础(五):分析一帧基于UDP的TFTP协议帧
- Java基础—网络编程【OSI/RM TCP/IP】【网络通信三要素】【UDP传输 & TCP传输】【DNS域名解析】
- 五、Linux网络编程-TCP/IP基础(五)滑动窗口协议、UDP特点、UDP报文格式
- JAVA基础 day25 网络编程 IP类 UDP,TCP传输学习 简易聊天工具 TCP并发学习
- 分布式基础-2、网络协议: TCP/IP 和UDP/IP
- 网络基础 - 常見的通訊協定 IP/TCP/UDP/ICMP
- Java基础—网络编程【OSI/RM TCP/IP】【网络通信三要素】【UDP传输 & TCP传输】【DNS域名解析】
- Java基础—网络编程【OSI/RM TCP/IP】【网络通信三要素】【UDP传输 & TCP传输】【DNS域名解析】
- Windows Socket 网络编程 TCP/IP体系结构、特点及相关术语
- Netstat用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况
- java基础学习-- 网络编程之TCP和UDP
- 网络编程 --IP、TCP、UDP校验和算法
- TCP/IP 网络基础
- 孙鑫VC学习(第14课网络编程,TCP/IP,UDP)
- Java基础23天--05--网络编程(TCP和UDP)
- 网络编程基础(3)——TCP与UDP编程
- 主机地址linux网络编程之TCP/IP基础(二):利用ARP和ICMP协议解释ping命令
- 【TCP/IP基础教程汇总】最大UDP数据报长度