一、TCP编程流程
(1)TCP服务器编程流程:
(2)TCP客户端编程流程
注意:
a. 默认情况下(不改变socket选项)。当你调用close( or closesocket,下面说close不再反复)时。假设发送缓冲中还有数据,TCP会继续把数据发送完。
b. 发送了FIN仅仅是表示这端不能继续发送数据(应用层不能再调用send发送),可是还能够接收数据。
c. 应用层怎样知道对端关闭?通常。在最简单的堵塞模型中,当你调用recv时,假设返回0,则表示对端关闭。在这个时候通常的做法就是也调用close,那么TCP层就发送FIN。继续完毕四次握手。
二、TCP编程细节
(1)TCP服务器
(2)TCP客户端
三、UDP编程细节
(1)UDP服务器
(2)UDP客户端