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.网际协议(Internet Protocol,IP):
IP协议的功能:相互连接的网络间数据的传输,即从一个IP主机传输到还有一个IP主机。
IP协议是主机与主机间传输数据协议。仅仅能完毕主机到主机间的数据报传输。
IP数据报格式例如以下:
IP首部:IP数据报的信息,包括源IP,目标IP等IP数据,这些IP数据好比信件上的地址,保证数据报传输到目标IP主机上。
IP数据:传输的数据。
IP协议是不可靠协议,可能发生丢包。错误等。不保证数据一定交付到目标主机。
2.用户数据报协议(User Datagram Protocol ,UDP):
UDP位于IP协议之上,使用IP作为底层传输协议,UDP将自己的UDP数据报封装于IP数据内传输。
UDP首部:包括源port,目标port等数据。port保证数据能准确传输到指定的进程。
UDP数据:传输的数据。
UDP基于IP协议,IP协议是不可靠协议,UDP本身没有不论什么确保可靠的措施。故UDP协议也是不可靠协议。
UDP协议适用于对数据可靠性,顺序交付无要求的程序,UDP能提供更快。更小消耗的传输服务。
3.传输控制协议(Transmission Control Protocol,TCP):
同UDP协议。TCP也位于IP协议之上,将TCP数据报封装于IP数据内传输。
TCP首部:相比UDP,TCP相同包括源port,目标port等数据的同一时候,TCP还包括序号。确认号等信息,这些数据用于确认数据是否被完整交付,TCP是可靠协议的原因就在这里。
TCP数据:传输的数据。
TCP尽管建立在不可靠协议IP之上,但TCP採用了多种机制。确保数据有序,可靠的交付。TCP多用于对数据安全要求较高的应用,如Web。电子邮件等。
4.扩展:
这里仅仅是简单的介绍了IP。UDP。TCP协议之间的关系,以及这些协议的特点,无法做到面面俱到。读者有兴趣的话。能够阅读计算机网络相关的书籍,《计算机网络》,《UNIX网络编程》等能解你之惑。