码迷,mamicode.com
首页 > 其他好文 > 详细

主要关于TCP

时间:2017-08-06 21:57:30      阅读:201      评论:0      收藏:0      [点我收藏+]

标签:tcp   客户端   bsp   pid   null   关闭   接受   listen   tab   

TCP是一个流协议

处理粘包问题

1、特殊字符 ‘\r\n‘用来作边界,表示一个消息

2、发定长包,消息很短也发固定长度(极度浪费网络资源)

3、加包头记录数据长度用以区分消息

4、其他一些特殊应用协议

 

while((pid = waitpid(-1, NULL, WNOHANG))处理多进程中的僵尸进程

 

TCP/IP11种状态

          LISTEN

SYN_SENT    

          SYN_REVD

ESTABLISTED

          ESTABLISTED

FIN_WAIT_1

          CLOSE_WAIT

FIN_WAIT_2

          LAST_ACK

TIME_WIAT

          CLOSED

 

CLOSING  客户端和服务器同时关闭产生,没有FIN_WAIT_2状态产生

 

FIN_WAIT_1    FIN_WAIT_1

CLOSING      CLOSING

TIME_WIAT    TIME_WIAT

scokfd接受到FIN段继续写数据是允许的,对方进程关闭会产生RST段,继续再写会产生SIGPIPE信号,默认动作是结束进程

主要关于TCP

标签:tcp   客户端   bsp   pid   null   关闭   接受   listen   tab   

原文地址:http://www.cnblogs.com/heidekeyi/p/7295813.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!