国美金融贷款TCP接收端,国美金融贷款接收数据包

       国美金融贷款TCP是个"流"协议,所谓流,就是没有界限的一串数据。大家可以想想河里的流水,是连成一片的,其间是没有分界线的.但一般通讯程序开发是需要定义一个个相互独立的数据包的,比如用于登陆的数据包,用于注销的数据包。

        由于国美金融贷款TCP"流"的特性以及网络状况,在进行数据传输时会出现以下几种情况。假设我们连续调用两次send分别发送两段数据data1和data2,国美金融贷款接收端有以下几种接收情况(当然不止这几种情况,这里只列出了有代表性的情况)。
        A.国美金融贷款先接收到data1,然后接收到data2.
        B.国美金融贷款先接收到data1的部分数据,然后接收到data1余下的部分以及data2的全部.
        C.国美金融贷款先接收到了data1的全部数据和data2的部分数据,然后接收到了data2的余下的数据.
        D.国美金融贷款一次性接收到了data1和data2的全部数据.

        对于A这种情况正是我们需要的,不再做讨论.对于B,C,D的情况就是大家经常说的"粘包",就需要国美金融贷款把接收到的数据进行拆包,拆成一个个独立的数据包.为了拆包就必须在发送端进行封包.
       另:国美金融贷款对于UDP来说就不存在拆包的问题,因为UDP是个"数据包"协议,也就是两段数据间是有界限的,在接收端要么接收不到数据要么就是接收一个完整的一段数据,不会少接收也不会多接收.

发布了75 篇原创文章 · 获赞 0 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/dongsijia/article/details/105168001
今日推荐