TCP学习总结(一)】的更多相关文章

参考学习张子阳大神的博客:http://www.cnblogs.com/JimmyZhang/category/101698.html 一.TCP 面向连接的(UDP是无连接的) 全双工,建立连接之后,双方都可以使用现有的连接收发数据 三次握手   二. TCP属于传输层,应用层如何使用传输层的协议? 套接字分离应用层.传输层的接口      一方发起连接,另一方对本地端口帧听,连接建立后发起连接一方不需要再帧听 发起连接为客户端,帧听方为服务端 TCPLietener持续监听端口,接收到连接请…
在学习的过程中,相信大家都有过“学了就忘“这种经历,又特别是TCP/IP知识点密集的通信协议,所以在此总结一下自己学到的皮毛,希望对自己对大家也有所帮助. 这篇博客主要讲运输层TCP和UDP的东西,IP层以后有时间再来补充. TCP TCP的全称叫传输控制协议(Transmission Control Protocol),这个协议的目的就是为网络数据提供可靠的运输服务. tcp5个特点: 1) 面向连接.应用程序在使用TCP协议之前,必须先建立TCP连接(三次握手).数据传输完毕后,必须释放连接…
1.前言     使用modbus有些时间了,期间使用过modbus RTU也使用过modbus TCP,通过博文和大家分享一些MODBUS TCP的东西.在嵌入式中实现TCP就需要借助一个以太网协议栈,在这里我选择最简单的uIP协议栈.uIP协议栈简单易用方便上手,相比于LwIP无论是移植还是使用难度都低些,这样就可以把更多的精力花在modbus tcp协议本身而不必花大量的时间研究以太网协议栈.modbus协议栈为freemodbus   [其他有用的博文]     [1]uIP学习笔记  …
参考学习张子阳大神的博客:http://www.cnblogs.com/JimmyZhang/category/101698.html 消息发送接口: 消息接收接口: 客户端: 服务端: 消息发送类: 消息接收类:…
参考学习张子阳大神的博客:http://www.cnblogs.com/JimmyZhang/category/101698.html     服务端接收到的数据可能是被截断或合并后的数据,需要协议来解决 例如:协议为字符串前加上[length="字符串长度"]  …
参考学习张子阳大神的博客:http://www.cnblogs.com/JimmyZhang/category/101698.html 一个客户端.发送一条消息 客户端: 服务端: 注意:NetworkStream.Read()方法是同步的 一个客户端.发送多条消息 客户端: 服务端: 注意: 1.客户端在TcpClient上调用Close()方法,或者在流上调用Dispose()方法,服务端的Read()方法会持续返回0 2.如果直接关掉客户端但没有调用stream.Dispose().Tcp…
项目功能: 实现一次发送和接收,服务器接收客户端发送的内容并打印出来 用最通俗的语言讲解下,上图中大椭圆是服务器,A.C是客户端,当客户端和服务器通过socket建立连接后 1.两者之间形成一个通道,此时将要发送的内容放入流中:out.wirte(“字节数组") 2.服务器端使用客户端的对象得到socket s,s包括客户端的IP,端口,内容等属性 3.in来获取s中的内容,也就是客户端的out和服务器端的in一一对应 4.最后服务器将(根据客户端生成的)s关闭.只有服务器的套接字ss可选择性关…
TCP连接管理 TCP运输连接有3个阶段, 即: 连接建立,数据传送和连接释放. 1. TCP的连接建立(3次握手) TCP连接的建立采用客户服务器方式.主动发起连接建立的应用进程叫做客户(client), 而被动等待连接建立的应用进程叫做服务器(server). TCP是面向连接的,无论哪一方向另一方发送数据之前,都必须先在双方之间建立一条连接.在TCP/IP协议中,TCP 协议提供可靠的连接服务,连接是通过三次握手进行初始化的. 看图讲解. 1.第一次握手:建立连接.客户端(A)发送连接请求…
TCP的流量控制 1.利用滑动窗口实现流量控制 所谓流量控制,就是让发送方的发送速率不要太快,要让接收方来得及接收.利用下图来说明如何利用滑动窗口机制进行流量控制: 一开始(connect后),B告诉A: 我的接收窗口rwnd=400,TCP的窗口单位是字节,不是报文段.报文段序号初始值设为1. 接收方B进行来3次流量控制.第一次把窗口减小到rwnd=300,第二次又减到rwnd=100,最后减到rwnd=0,即不允许发送方再发送数据了.这种情况,发送方A暂停发送的状态将持续到B重新发出一个新的…
前面一节咱们介绍完了TCP协议,这部分,将要介绍,TCP是如何实现可靠传输的. TCP的可靠传输 1.滑动窗口 上一节我们介绍TCP报文段头部的时候说得到,"窗口"这个部分,"窗口"的内容就是发送/接收的数据的字节总量(窗口是以字节为单位). 发送方A有发送窗口,接收方B有接收窗口.头部的"窗口"要配合"确认号"才能确定,要发送哪些数据和具体接收哪些数据. 现假定A收到了B发来的确认报文段中,其中窗口是20(字节),而确认号是…