TCP/IP 笔记 - TCP数据流和窗口管理】的更多相关文章

TCP流量控制机制通过动态调整窗口大小来控制发送端的操作,确保路由器/接收端消息不会溢出. 交互式TCP连接 交互式TCP连接指该连接需要在客户端和服务器之间传输用户输入信息,如按键操作.短消息.操作杆或鼠标操作.对于这些操作,如果用较小的报文段来承载信息,则传输协议需要耗费很高的代价:反之采用较大的报文段则会引入更大的延时,对延迟敏感类应用造成负面影响.因此需要权衡相关因素来找到适合的方法. 以ssh(安全外壳)应用为例,对一个ssh连接,每个交互按键通常都会生成一个单独的数据报(每个按键独立…
TCP是一种面向连接的单播协议,在发送数据之前,通信双方必须在彼此建立一条连接:这与UDP的无连接不同,UDP无需通信双方发送数据之前建立连接.所有TCP需要处理多种TCP状态时需要面对的问题,比如连接的建立.传输.终止,以及无警告的情况下重新启动,这也是TCP与UDP之间的主要区别之一. TCP连接的建立和终止过程 一个TCP连接由一个4元组构成,它们分别是两个IP地址和两个端口号.更准确地说,一个TCP连接是由一对端点或套接字构成,其中通信的每一端都由一对(IP地址,端口号)所唯一标识. 一…
这次总结一下TCP相关的知识. TCP主要特点 面向连接:在通信前必须建立连接(只是逻辑上存在,而不是物理连接) 只能有两个端点:即只能一对一通信(所以通常p2p是用UDP实现的) 提供可靠交付服务:保证发送的数据无差错.不丢失.不重复.顺序对(可靠,但是代价较UDP大) 全双工通信:允许双方在任何时候发送数据.TCP连接两端都有发送和接收缓存,在发送前先将数据写入缓存,TCP会自己选择合适的时候发送(接受同理,先写入缓存然后再读取) 面向字节流:流指的是流入到进程或者从进程流出的字节序列,TC…
拥塞控制是TCP通信的每一方需要执行的一系列行为,这些行为有特定算法规定,用于防止网络因为大规模的通信负载而瘫痪.其基本方法是当有理由认为网络即将进入拥塞状态(或已由于拥塞而出现路由丢包情况)时减缓TCP传输.TCP拥塞控制的关键点自傲与怎样准确的判断何时需要减缓且如何减缓TCP传输,以及何时恢复其原有速度. 注意: M(_x) 表示M的下标是x ,m(^k) 表示m的K次方. 减缓TCP发送 第15章提到,根据接收方剩余缓存空间大小,在TCP头部设置通告窗口大小字段,该数值是TCP发送方调节发…
TCP协议中不存在轮询机制,这意味着加入启动一个客户端进程,与服务器建立连接后,然后离开几小时.几天.甚至几个月,连接依然会保持着.理论上,中间路由器可以崩溃和重启,数据线可以断开再连接,只要连接两端的主机没有被重新启动(或者更改IP地址),那么它们仍会保持连接状态. TCP保活机制 TCP保活机制是一种在不影响数据流内容的情况下探测对方的方式.它由一个保活计时器实现,当计时器被激发,连接一端将发送一个保活探测(简称保活)报文,另一端接收报文的同时会发送一个ACK作为响应. 保活机制并不是TCP…
计算机与网络发展 计算机自诞生伊始,经历了一系列演变与发展.大型通用机计算机.超级计算机.小型机.个人电脑.工作站.便携式电以及现如今的智能手机终端都是这一过程的产物.它们性能逐年增强,价格却逐年下降,机体规模也在逐渐变小. 随着计算机的发展,人们不再局限于单机模式,而是将一个个计算机连接在一起,形成一个计算机网络.从而实现信息共享,同事在能在两台物理位置较远的机器之间即时传递消息. 计算机网络根据规模可以分为WAN(Wide Area Network,广域网)和LAN(Local Area N…
1. TCP/IP分层 TCP/IP 是四层的体系结构:应用层.运输层.网际层和网络接口层,如下图: OSI协议是国际标准的网络协议,但是由于OSI的实用性等问题造成OSI没有流行起来.目前国际上广泛应用的是TCP/IP协议. 一般情况下为了学习,通常往往采取折中的办法,即综合 OSI 和 TCP/IP 的优点,采用一种只有五层协议的体系结构,如下图: (1)应用层:Email,FTP,HTTP等 (2)传输层:著名的TCP和UDP协议就在这个层次, 1)端到端的通信 2)差错检测 (3)网络层…
带你了解TCP/IP,UDP,Socket之间关系 https://blog.csdn.net/chaoshenzhaoxichao/article/details/79785318 主要知识点: TCP/IP参考模型 TCP\UDP\Socket的定义 tcp/ip通信示例 TCP/IP协议共分为四层:数据链路层.网络层.传输层和应用层. TCP 与 UDP 的区别 TCP 用于在传输层有必要实现可靠传输的情况.由于它是面向有链接并具备顺序控制.重发控制等机制的,所以他可以为应用提供可靠的传输…
目录 前言 17. TCP 传输控制协议 17.1 引言 17.2 TCP 服务 17.3 TCP的首部 18. TCP连接的建立与终止 18.1 引言 18.2 连接的建立与终止 18.2.1 建立连接 18.2.2 终止连接 18.2.3 TCP 连接状态变迁图 18.3 连接建立超时 18.4 最大报文段长度 18.5 TCP 半关闭 18.6 TCP 状态变迁图 18.6.1 2MSL 等待状态 18.6.2 平静时间的概念 18.6.3 FIN_WAIT_2 状态 18.7 复位报文段…
安全:可扩展身份认证协议.IP安全协议.传输层安全.DNS安全.域名密钥识别邮件 任何由用户或以用户账号执行却违背了用户本身意愿的软件被称为恶意软件 网络安全是一门十分广泛及有深度的学识,而本书旨在了解TCP/IP协议族知识,所以书中只介绍了一些TCP/IP所使用的部分安全方案.并且对安全这块我也没多少深入的研究,也就基于书本内容做些知识摘抄以供了解和学习. 信息安全基础 从信息安全的角度看,无论是否在计算机网络中,信息都该具有一些属性: 1. 机密性,信息只能为其指定的用户知晓. 2. 完整性…
建立在TCP协议上的网络协议有telnet,ssh,ftp,http等等.这些协议根据数据吞吐量来分成两大类: (1)交互数据类型,例如telnet,ssh,这种类型的协议在大多数情况下只是做小流量的数据交换,比如说按一下键盘,回显一些文字等等. 交互数据类型在通讯中比例为10%: (2)数据成块类型,例如ftp,这种类型的协议要求TCP能尽量的运载数据,把数据的吞吐量做到最大,并尽可能的提高效率.数据成块类型在通讯中比例为90%: 针对这两种情况,TCP给出了两种不同的策略来进行数据传输: 1…
数据链路的作用 数据链路层的协议定义了通过通信媒介互连的设备之间传输的规范.通信媒介包括双绞线电缆.同轴电缆.光纤.电波以及红外线等介质.此外,各个设备之间有时也会通过交换机.网桥.中继器等中转数据. 实际上,各个设备之间在数据传输时,数据链路层和物理层都是必不可少的.众所周知,计算机以二级制0.1来表示信息,然而实际的通信媒介之间处理的却是电压的高低.光的闪灭以及光波的强弱等信号.把这些信号与二进制的0.1进行转换正式物理层的责任.数据链路层处理的数据也不是单纯的0.1序列,该层把他们集合为一…
TCP的特点及其目的 为了通过数据包实现可靠性传输,需要考虑很多事情,例如数据的破坏.丢包.重复记忆分片顺序混乱等问题.如不能解决这些问题,也就无从谈起可靠传输. TCP通过检验和.序列号.确认应答.重发控制.连接管理以及窗口控制等机制实现可靠性传输. 通过序列号与确认应答提高可靠性 在TCP中,当发送端的数据到达接收主机时,接收端主机会番号一个已收到消息的通知.这个消息叫做确认应答--ACK(Positive Acknowled-gement 意指已经接收.) TCP通过肯定的确认应答(ACK…
与UDP不同,TCP提供面向连接的.可靠的.基于字节流的传输层协议,且提供差错纠正. TCP传输的概念 对与分组丢失和比特差错的处理方法,最直接的方法是重发分组,直到它被正确接收. 这需要一种方法来判断: 1. 接收方是否已收到分组: 2. 接收方接收到的分组是否与之前发送方发送的一样,接收方给发送方信号以确定自己已经接收到一个分组,这种方法称为确认(ACK). 所以传输的顺序大致是这样的: 1. 发送方发送一个分组a,等待一个ACK: 2. 接收方接收到分组a,发送对应的ACK给发送方: 3.…
链路层的目的是为IP模块发送和接收IP数据报. 以太网和IEEE 802局域网标准 以太网指的是一套标准,有DEC.Intel公司和Xerox公司在1980年首次发布,并在1982年加以修订.第一个常见格式的以太网被称为"10Mb/s以太网"或"共享以太网",它被IEEE采纳为802.3标准. 其网络格式如下: 上图共享以太网包含一个或多个站(工作站.计算机等),它们共享一段电缆.当(传输)介质被确定为空闲时,链路层PDU可用从一个站发送到其他站.如果多个站点同时发…
前边讲了TCP连接的建立和终止,分别要三次握手和四次通信.这些报文段都只包含首部,没有数据部分.    这里就讲讲数据传送的一些细节.一个TCP连接建立成功以后,就可以开始传送数据了~ 一般TCP数据传输中,按分组数量算的话,一半是成块数据(比如FTP应用),一半是交互数据(比如Telnet应用).如果按照字节数比较的话,成块报文段远远高于交互报文段(显然交互报文段都是几个字节的数据...) TCP的交互数据流: 比如Rlogin应用,每一次按键(每个字节)都会发送包,而不是敲一行命令回车后发送…
1. IP 1.1 配套协议 IP 是 TCP/IP 体系中两个最主要的协议之一 . 与 IP 协议配套使用的还有四个协议:   (1)ARP (Address Resolution Protocol)地址解析协议 (2)RARP (Reverse Address Resolution Protocol)逆地址解析协议 (3)ICMP(Internet Control Message Protocol)因特网控制报文协议 (4)IGMP(Internet Group Management Pro…
前言 IP相当于OSI参考模型的第3层--网络层:主要作用是"实现终端节点之间的通信"又称"点对点通信". IP作为整个TCP/IP中至关重要的协议,主要负责将数据包发送给最终的目标计算机.因此,IP能够让世界上任何两台计算机之间进行通信. 数据链路层的作用在于实现同一种数据链路下的包传递,而网络层则可以实现跨越不同数据链路的包传递. 主机:配置有IP地址,但是不进行路由控制的设备. 既配有IP地址又有路由控制能力的设备叫做"路由器". 节点:主…
IP旨在让最终目标主机收到数据包,但是在这一过程中仅仅有IP时无法实现通信的.必须还要又能够解析主机名称和MACdivide功能,以技术包在发送过程中异常情况处理的功能. 这篇主要介绍下DNS.ARP.ICMP等协议 DNS TCP/IP网络中要求每一个互连的计算机都具有其唯一的IP地址,并基于这个IP地址进行通信.但是IP地址太长了,不好记. 人们希望主机有自己自己的名字,这个名字是唯一的,而且容易记住.于是,诞生了主机名"域名"的概念.域名是一种为了识别主机名称和机构名的具有分层的…
TCP/IP 背景和介绍 上世纪 70 年代,随着计算机技术的发展,计算机使用者意识到:要想发挥计算机更大的作用,就要将世界各地的计算机连接起来.但是简单的连接是远远不够的,因为计算机之间无法沟通.因此设计一种通用的“语言”来交流是必不可少的,这时 TCP/IP 协议就应运而生了. TCP/IP(Transmission Control Protocol/Internet Protocol)是传输控制协议和网络协议的简称,它定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准. TCP…
TCP协议为了提供可靠的数据传输服务,会启动数据重传来解决下层网络层(IP)可能出现的数据包丢失. 超时重传介绍 TCP重传由两套独立机制来完成重传,基于时间的超时重传(RTO,TCP发送数据时会设置一个计时器,若至计时器超时仍未收到数据确认信息,则会引发相应的超时和计时器重传操作),基于确认信息的构成(通常在没发生延时的情况下,若TCP累积确认无法返回新的ACK,或者当ACK包含的选择确认信息(SACK)表明出现失序报文段时,快速重传会推断出现丢包,这时候发送端认为接收端可能出现数据丢失时,需…
由于IP地址的烦琐导致的记忆和使用困难,互联网支持使用主机名称来识别包括客户机和服务器在内的主机.同时为了使用一系列协议,主机名称通过称为"名称解析"的过程转换成对应IP地址. 互联网中存在各种形式的名称解析,最普遍.最重要的一种采用分布式数据库系统是开发者所熟知的域名系统(DNS,Domain Name System).之所以因为分布式,是因为互联网中没有一个站点能够知道所有的(主机地址-名称)对信息.每个站点维护自己的信息数据库,并允许一个服务程序供互联网上其他系统查询.DNS提供…
关于本章中的IP分片部分,参考第五章IP分片头部知识点.需要注意的是,TCP有超时重传,UDP的超时重传则依赖上层应用程序实现. 用户数据报协议(UDP) UDP是一个简单的面向无连接.不可靠的数据报的传输协议(它把应用程序传给IP层的数据发送出去,但并不保证它们能够到达目的地).它不提供差错纠正.队列管理.重复消除.流量控制和拥塞控制:它提供差错检测,包含传输层真实的端到端检验和.[RFC0768]是UDP的正式规范. 在IPv4中,协议字段值为17标识UDP:IPv6则在下一个头部字段使用相…
在之前第二章介绍IP寻址的时候有介绍到,IP地址有4种:单播.组播.广播.任播. 单播,客户端与服务器之间点到点连接通信: 组播,在发送者和多个接收者(如某个特定的分组)之间实现点对多点的连接通信: 广播,在网络(广播地址范围内的子网)内广播数据包,网络内的每一台主机都将受到这些数据包: 任播,使得数据包可以根据路由拓朴来决定送到“最近”或“最好”的目的地. 广播和组播为应用程序提供两种服务:数据分组交付至多个目的地.通过客户端请求/发现服务器.一个广播请求会影响在广播域范围内的所有可达主机,而…
ICMP是一种面向无连接的协议,负责传递可能需要注意的差错和控制报文,差错指示通信网络是否存在错误(如目的主机无法到达.IP路由器无法正常传输数据包等.注意,路由器缓冲区溢出导致的丢包不包括在ICMP响应范围内,在TCP负责范围). ICMPv4和ICMPv6分别指用于IPv4和IPv6的ICMP版本.在IPv4中,协议字段值为1表示该报文携带了ICMPv4:在IPv6中,ICMPv6报文位于扩展头部里,ICMPv6扩展头部上一个头部包含了值为58的"下一个头部"字段. ICMP报文…
防火墙是位于内部网和外部网之间的屏障,是系统的第一套防线,作用是防止非法用户的进入. 网络地址转换是一种IP数据包通过路由器或防火墙时通过重写来源IP地址或目的地址的技术,可以用来隐藏或保护内部网络,同时也用来缓解IPv4资源紧缺(NAT普遍还是用于多台主机共用一个公有IP地址访问Internet网). 防火墙 防火墙最常见的两种是代理防火墙和包过滤防火墙,它们之间的主要区别是所操作的协议栈的层次及由此决定的IP地址和端口号的使用.包过滤防火墙是一个互联网路由器,能够对由外向内的流量进行过滤,丢…
连接到Internet中的每台设备至少都有一个IP地址,IP地址表示了流量的来源(好比别人要找你玩,需要知道你家的地址:网络中别人需要和你通信,也需要知道IP地址),且Internet中的IP地址必须是唯一的.对于全球性的Internet地址,一个分层结构管理实体帮助用户和服务商来提供分配地址:个人用户通常由Internet服务提供商(ISP)分配地址,通过支付费用来获得地址和执行路由. IP地址表示 IPv4地址长度32位,通常采用点分四组(点分十进制)表示法,如165.195.130.107…
Effective communication depends on the use of a common language. 有效沟通取决于使用共同的语言 . TCP/IP协议族 一系列相关协议的集合被称为一个协议族.指定一个协议族中的各种协议之间的相互关系并划分需要完成的任务的设计,称为协议族的体系结构或参考模型.而TCP/IP则是一个实现Internet体系结构的协议族,它来源于ARPANET参考模型.标准的TCP/IP实现来自加州大学伯克利分校计算机系统研究组(CSRG),它们通过4.…
1.计算机网络发展的7个阶段1)批处理服务器一次只能处理一批程序指令2)分时服务器可以分时为多台客户端服务3)计算机之间通信计算机之间由通信线路连接,互相通信4)计算机网络的产生通过分组交换技术,在不同厂商的计算机之间相互通信5)互联网的普及轻量级个人电脑的产生;电子邮件(E-mail),万维网(WWW)的普及6)物联网电脑,电视,手机,电话,家用电器等设备的联网7)网络安全 2.通信协议1)CPU和OSCPU(中央处理器),调度执行程序OS(操作系统),CPU管理,计算机外围设备管理,程序运行…
TCP/IP的应用层涵盖了OSI参考模型中第5.第6.第7层的所有功能,不仅包含了管理通信连接的会话层功能.转换数据格式的标识层功能,还包括与对端主机交互的应用层功能在内的所有功能. 利用网络的应用程序有很多,包括Web浏览器.电子邮件.远程登录.文件传输.网络管理等.能够让这些应用进行特定通信处理的正式应用协议. 接下来介绍下应用层常见的协议: DNS:域名系统.DNS是因特网使用的命名系统,用来把便于人们使用的机器名字转换为IP地址. 因特网的域名结构 如: mail.cctv.com 三级…