URG与PSH的区别及联系

          TCP中有6个标志位,分别为URG、PSH、ACK、RST、SYN、FIN,每个标志位都有其特殊的含义,现重点讨论URG与PSH这两个标志位;

     含义:

      URG:表示本报文段中发送的数据是否包含紧急数据,当URG=1,表示有紧急数据,后面的紧急指针字段只有当URG=1时才有效;

      PSH:告诉对方收到该报文段后是否应该立即把数据推送给上层,如果为1,则表示对方应当立即把数据提交给上层,而不是缓存起来;

     区别:

     URG与PSH的区别及联系

     共同点:URG和PSH都是提高报文段的优先级,使报文段更先推送给上层

     不同点:两者将报文段更先推送给上层的实现方法不一样,URG是通过置1来让后面的紧急指针字段有效,从而让报文段更先发送,而PSH是通过置1来告诉接收方在接收到报文段后应该立即把数据发给上层而不是缓存起来

     当URG=1时,紧急指针指向包内数据段的某个字节(数据从第一字节到指针所指字节就是紧急数据,不进入接收缓冲就直接交给上层进程,余下的数据要进入接收缓冲的),PSH=1就是是把接收缓冲中排好序的那一段数据交给上层。

     URG它是一个正的偏移,与TCP首部中序号字段的值相加表示紧急数据后面的字节,即紧急指针是数据最后一个字节。TCP首部中只有紧急指针指出紧急数据的位置,它所指的字节为紧急数据,但无法指定紧急数据的长度。

      

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值