当前位置: 首页 > news >正文

怎么棋牌网站建设网站登记备案

怎么棋牌网站建设,网站登记备案,网络推广就是做网站吗,网站制作建设有哪些目录 一、TCP 1、特性 2、确认应答 #xff08;1#xff09;、定义 #xff08;2#xff09;、原理 #xff08;3#xff09;、接收缓冲区 3、超时重传 #xff08;1#xff09;、丢包 #xff08;2#xff09;、定义 #xff08;3#xff09;、分类 二、…目录 一、TCP 1、特性 2、确认应答 1、定义 2、原理 3、接收缓冲区 3、超时重传 1、丢包 2、定义 3、分类 二、连接管理 1、特殊比特位 2、TCP建立连接——三次握手 1、定义 3、TCP断开连接——四次挥手 1、定义 三、效率机制和安全机制 1、滑动窗口——效率机制 1、定义 2、原理 3、批量发送过程中出现丢包 2、流量控制——安全机制 1、定义 2、原理 3、拥塞机制——安全机制 1、定义 2、原理  4、延迟应答——效率机制 1、定义 2、包的延迟应答限制 5、 捎带应答——效率机制 1、定义 四、面向字节流 1、粘包问题 2、解决方法 五、异常情况 1、进程关闭/进程崩溃 2、主机关机 3、主机断电 1、对端是发送方 2、对端是接收方 4、网线断开 一、TCP 1、特性 TCP协议是有连接、可靠传输、面向字节流和全双工的传输层通信协议 TCP可靠性的基石 传输顺利时使用确认应答保证可靠性。出现丢包时使用超时重传作为补充。 2、确认应答 1、定义 发送方在发送完数据之后为了确认接收方是否收到数据接收方会返回一个应答报文表示自己已经收到数据。 注确认应答是实现可靠性的核心机制。 例 A向B发送一个申请B回复一个应答报文 。 回复可能会因为一些原因导致顺序发送改变。为了解决这个问题就需要针对消息进行编号给发送的消息分配一个序号同时应答报文给出确认序号。 2、原理 确认序号的规则不是说发送方的序号是什么确认序号就是什么而是取得发送方送过来的所有数据的最后一个字节的下一个字节的序号 。 TCP将每个字节的数据都进行了编号即为序列号  发送方的确认序号是一个无意义的数据接收方的序号和发送方的序号无关 确认序号1001的含义 小于1001的数据表示已经收到接下来要向发送方索要从1001开始的数据 接收方可以通过ack的确认序号告诉发送方哪些数据已经收到了 3、接收缓冲区 对于TCP来说自身也承担整个队列的任务TCP会有一个接收缓冲区一块内核中的内存空间每个socket都有一份自己的缓冲区。TCP可以按照序号针对收到的消息进行整队。 应用程序读数据时读到的一定是有序的和发送顺序一样。 3、超时重传 1、丢包 丢包是网络上非常典型的情况由于网络环境复杂数据传输过程中难免遇到意外每一次数据传输都有可能丢失。 每个设备都承担很多的转发任务中间任何一个节点出了问题都可能导致丢包。每个设备转发能力都是有上限的某一时刻某个设备上面的流量达到峰值就可能引起部分数据被丢包 2、定义 每次数据传输如果成功都应收到ack。如果包丢了接收方就收不到就不会返回ack。 发送方拿不到应答报文等待一段时间后还是没有收到应答报文发送方就视刚才的数据丢包了这就会触发超时重传机制重新发送一次数据。 3、分类 数据直接丢了接收方没有收到所以不会发送ack接收方收到数据但返回的ack丢了 发送方是区分不了这两种情况只能重传。 注 TCP针对多个包丢失处理思路是继续超时重传。但是连续触发超时重传会让等待时间增加重传的频率降低。超过一定次数后还没收到ack后就会断开连接TCP会尝试重置连接如果重置连接也失效TCP就会关闭连接放弃传输数据。能重传就重传传不了就关闭尽最大可能完成传输 二、连接管理 1、特殊比特位 这6个特殊的比特位默认是0如果为1表示特定含义 第二位是ack如果这一位为1表示当前TCP数据报是一个应答报文第五位是syn如果这一位为1表示当前TCP数据报是一个同步报文第六位是fin如果这一位为1表示当前TCP数据报是一个结束报文 2、TCP建立连接——三次握手 1、定义 握手指的是通信双方各自进行一次网络交互。相当于客户端和服务器之间通过三次交互建立了连接关系双方各自记录对方的消息。 三次握手这个过程本质上是投石问路验证了客户端和服务器各自的发送能力和接收能力是否正常。 首先客户端向服务器发送syn连接请求服务器接收到syn后向客户端返回ack同时服务器向客户端发送syn客户端收到syn后向服务器返回ack 注上述过程由内核自动完成应用程序干预不了。等到连接完成服务器accept把建立好的连接从内核拿到应用程序中。 例 B收到了A的问话此时B知道A麦克风正常自己的耳机正常A收到了B的回答和问话A知道自己的耳机和麦克风正常B的耳机和麦克风正常。B收到A的回答B知道自己的麦克风正常A的耳机正常。 确认了客户端和服务器各自的发送能力和接收能力都正常这就是后续可靠传输的基础 注上述流程中间的syn和ack拆开分别发送同样能够达成目的。但是没有必要分层两次发送效率不如合并成一次封装和分用。 3、TCP断开连接——四次挥手 1、定义 通信双方各自给对方发送一个fin结束报文再各自给对方返回ack。 客户端向服务器发送一个fin结束报文服务器接收到fin后向客户端返回一个ack服务器同时向客户端发送一个fin客户端接收到fin后向服务器返回一个ac 注ack和fin有一定概率合并成一个的但是通常情况下不能合并。 三次握手ack和syn是同一个时机触发的都是内核来完成的四次挥手ack和fin则是不同实际触发的ack是内核完成的会在收到fin时的第一时间返回fin则是应用程序代码控制的在调用到socket的close方法时才会触发fin 三、效率机制和安全机制 1、滑动窗口——效率机制 1、定义 对每一个发送的数据段都要给一个ack确认应答。收到ack后再发送下一个数据段这样做有一个比较大的缺点就是性能较差尤其是数据往返的时间较长的时候。 TCP要保证的不仅仅是可靠性还有效率提升可靠性往往意味着损失效率。因此为了弥补效率我们引入了滑动窗口这一机制 相比发送一条数据, 收到ACK后发送下一条, 滑动窗口可以一次性发送 N 条数据报收到 M 条 ACK 的应答后, 窗口向右移动M个位置并继续发送窗口中没有发送的数据。这样就可以做到将多个 ACK 的等待时间重叠在一起使用一份时间等待多个ack总的等待时间缩短了整体的效率就提升了。 批量发送数据一次发送多条数据一次等多个ack称为滑动窗口 注意UDP更快TCP再怎么提高效率都不可能比UDP快TCP的效率机制本质上是让性能折损少一点。  2、原理 批量发送不是无限的是发送到一定程度就等待ack。不等待直接发送的数据量是有上限的而且回来一个ack就立即发下一条相当于总的要批量等待的数据是一致的把批量等待数据的数量就称为“窗口大小” 。 批量发了四条数据就等待四个ack红色的区域就相当于等待窗口 当收到2001这个ack意味着1001-2000这个数据得到了确认此时就会立即发下一个5001-6000这个数据。此时看到的效果就好像窗口还是这么大但是往后挪了一个格子。如果收到的ack非常快此时这个窗口就在快速的往后滑动。 3、批量发送过程中出现丢包 【1】、ack丢了 例当收到2001这个ack时此时发送方就知道了2001之前的数据收到了。1-1000这个数据也收到了1001这个ack丢了无所谓。如果是最后一个丢了就照常超时重传。滑动窗口是锦上添花不是说前面的超时重传就没了。如果批量发送滑动窗口说了算。 注这种情况没事即使丢了这么多ack对于可靠性没有任何影响。确认序号的含义表示该序号之前的数据都已经收到了。后一个ack能够涵盖前一个ack的意思。 【2】、数据丢了 上述重传过程没有任何冗余的的操作丢了数据才会重传不丢的数据不必重传。整体数据是比较快的这个重传过程也称为快速重返。 当1001这个数据重传过来之后此时缺失的拼图就补全了接下来就要从7001开始索要 如果是4001也没有收到1001-2000之后接下来返回ack就是索要4001也是同理反复索要多次发送发就会重传4001。 注滑动窗口快速重传是在批量传输大量数据时会采取的操作。如果你就只传输一条两条少量的低频的操作。就不会按滑动窗口这么做仍然是前面朴素的确认应答和超时重传。 2、流量控制——安全机制 1、定义 滑动窗口批量发送。窗口越大批量发送的数据越多整体的速度就越快。但是窗口不能是无限大如果发送太快瞬间把接受方接收缓冲区给打满了接下来继续发送此时数据就会丢包。 TCP支持根据接收端的处理能力来决定发送端的发送速度这个机制就叫做流量控制。 因此我们可以通过流量控制来解决问题本质上就是让接收方来限制一下发送方的速度。 2、原理 在网络通信中, 发送方的数据会通过网卡发送到接收缓冲区中, 接收缓冲区在操作系统内核中可以视为一个阻塞队列而接收方的应用程序则是会不断从接收缓冲区中处理数据。 接收端将自己可以接收的缓冲区大小放入TCP首部中的窗口大小字段通过ack端通知发送端。窗口大小字段越大说明网络的吞吐量越高。接收端一旦发现自己的缓冲区快满了就会将窗口大小设置成一个更小的值通知给发送端。发送端接受到这个窗口之后就会减慢发送速度。如果接收端缓冲区满了就会将窗口置为0。发送方不再发送数据但是需要定期发送一个窗口探测数据段使接收端把窗口大小告诉发送端。 接收方计算窗口大小简答粗暴直接拿接收缓冲区剩余空间作为窗口大小。 如果接收缓冲区满了这时窗口为0也就是发送方暂时发不了数据了只能等待缓冲区位置空出来这期间会向接收方发送探测报文这个数据报的作用就是让接收方返回带有滑动窗口大小数据的 ACK 数据报, 以重新调整窗口大小。 3、拥塞机制——安全机制 1、定义 虽然TCP有滑动窗口能够高效可靠的发送大量的数据但滑动窗口的大小取决于流量控制和拥塞控制。流量控制是衡量接收方的处理能力拥塞控制则是衡量中间节点的传输能力。 在不清楚当前网络状态下冒然发送大量数据会出现问题可能当前的网络状态就已经比较拥堵。 因此TCP引入拥塞机制即慢启动机制先发少量的数据摸清当前的网络拥堵状态再决定按照多大的速度传输数据。 2、原理  引入一个概念为拥塞窗口发送开始时定义拥塞窗口大小为1每次收到一个ack应答拥塞窗口加1每次发送数据包时将拥塞窗口和接收端主机反馈的窗口大小做比较取较小的值作为实际发送的窗口 例 如上图刚开始传输会给一个非常小的窗口比较小的初始速度慢开始之后每次翻倍指数增长可以让窗口大小在短时间内达到一个比较大的值快速接近当前网络传输路径的能力瓶颈当指数增长达到一定阈值就变成线性增长使传输速度逐渐接近传输上限避免一下突然超过上限很多直到增长到一定程度出现丢包认为当前的窗口大小已经达到当前路径的传输上限此时又立即把窗口大小回归到一个较小的初始值重复上述过程 4、延迟应答——效率机制 1、定义 TCP中决定传输效率的关键元素是窗口大小而决定窗口大小的关键则是流量控制中接收方的接收缓冲区剩余空间大小。因此接收方在收到数据传输后先处理缓冲区中的数据暂缓ack的发送以增大窗口提高效率。 例 假设接收端缓冲区为1M一次收到了500K的数据如果立刻应答返回的窗口就是500K。但实际上可能处理端处理的速度很快10ms之内就把500K数据从缓冲区消费掉了。在这种情况下接收端处理还远没有达到自己的极限即使窗口再放大一些也能处理过来。如果接收端稍微等一会再应答比如等待200ms再应答那么这个时候返回的窗口大小就是1M。 注窗口越大网络吞吐量就越大传输效率就越高。我们的目标是在保证网络不拥塞的情况下尽量提高传输效率 2、包的延迟应答限制 数量限制每隔N个包就应答一次时间限制超过最大延迟时间就应答一次 5、 捎带应答——效率机制 1、定义 在延迟应答的基础上客户端服务器在应用层也是 一发一收 的。这意味客户端传给服务器一个request服务器也会传给客户端回一个response和ack。ack由内核负责是立即返回的response是通过代码执行到才返回的。但是通过延时应答机制让ack稍等一会再发送response就可以和ack合并成一个数据报发送给客户端增加了效率。 注捎带应答可以用于四次挥手使其变为三次挥手  四、面向字节流 1、粘包问题 当A给B连续发送多个应用层数据报之后这些数据积累到B的接收缓冲区中紧紧挨在一起。此时B的应用程序在读数据时就难以区分从哪个数据到哪个数据是一个完整的应用层数据报很容易产生少读或多读的问题。 2、解决方法 定义分隔符约定长度例约定前4个字节表示整个数据报的长度 注以上两种方法都是自定义应用层协议 。类似的xml和json本质上都是通过分隔符来实现的HTTP协议既会使用分隔符也会使用约定长度 五、异常情况 1、进程关闭/进程崩溃 进程销毁后socket文件也随之被关闭但连接还在仍然可以继续四次挥手。 2、主机关机 先杀死所有的用户进程也会触发四次挥手。 如果四次握手没有完成例 对方发的fin过来后此电脑还没来得及发送ack就关机。此时对端就会重传fin多次重传后还是没有ack就会尝试重置连接没有效果就直接释放连接。 3、主机断电 1、对端是发送方 与主机关机执行机制顺序相同接收不到ack-超时重传-重置连接-释放连接 2、对端是接收方 对端无法立即知道此电脑是未发送新的数据还是直接关机。因此TCP内置了心跳包保活机制对端会定期给此电脑发送一个心跳包此电脑会返回一个回应。如果每个心跳包都有及时的回应就说明当前的状态良好。如果心跳包发送过去后没有回应就说明此电脑关闭。 注一般心跳判定不会很严格只有连续多次没有回应才会视为连接异常 4、网线断开 执行顺序同上述主机断电。
http://www.laogonggong.com/news/103109.html

相关文章:

  • 企业网站管理系统视频教程天天传媒有限公司网站
  • 如何做商业推广网站表格里怎么做链接网站
  • html php网站开发请别人做网站会不会被盗
  • 网络营销教学网站如何用百度云文件做网站
  • 深圳 网站设计公司价格php学院网站源码
  • 如何用wordpress站群黑龙江省建设集团网站
  • 微网站开发素材wordpress插件文件
  • 石家庄建站外贸网站云梦县城乡建设局网站
  • 深圳学校网站建设报价郑州seo优化顾问
  • 网站设计制作收费明细wordpress微信博客模板下载
  • 山东建设厅网站网址网站多少钱一年
  • app设计网站有哪些功能dede医院网站模板
  • wordpress多站点更改网站模板
  • 网站建设哪个公司怎么优化网站
  • 做一个自己的免费网站昆山商城网站建设
  • 做品牌推广网站需要多少钱宿迁公司做网站
  • 门户网站开发 系统介绍做网站需要租空间吗
  • 烟台网站制作效果网站红色模板
  • 北京建设行政主管部门官方网站网站开发岗位思维导图
  • 呼伦贝尔做网站公司校园在线网站怎么做
  • 做国外衣服的网站检测网站访问量
  • 做网站的文案广州市医院网站建设
  • 找段子的各大网站网站建设技术支持有什么
  • 甘肃省住房和城乡建设部网站官网学校品牌建设
  • 什么是线上推广公司网站怎么建立优化体系
  • 宝安网站建设公司968wordpress跳转二级域名
  • 古风网站的关于我们页面怎么做浙江省建筑信息港
  • 有没有做西餐的视频网站中投建设官方网站
  • 怎样使用自己的电脑做网站h5制作一般多少钱
  • 网站做的不好会有什么后果蚂蚁币是什么网站建设