博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Web性能--TCP的构成
阅读量:7247 次
发布时间:2019-06-29

本文共 981 字,大约阅读时间需要 3 分钟。

前言:阅读《Web性能权威指南》摘录笔记。在这本书开篇就读到第一句话令人印象深刻: "合格的开发者知道怎么做,而优秀的开发者知道为什么那么做"。

 

内容大纲:

1、因特网有两个核心的协议:IP和TCP。

2、三次握手

 

正文:

1、因特网有两个核心的协议:IP和TCP。

  IP,即Internet Protoco(因特网协议),负责联网主机之间的路由选择和寻址

  TCP,即Transmission Control Protocol(传输控制协议),负责在不可靠的传输信道之上提供可靠的抽象层。

 TCP/IP也常被称为"因特网协议套件"(Internet Protocol Suite)

2、三次握手

  所有的TCP连接一开始都要经过三次握手。客户端和服务器在交换应用数据之前,必须就起始分组序列号,以及其他一些连接相关的细节达成一致。处于安全考虑,序列号由两端随机生成。

  

  SYN

  客户端选择一个随机序列号x,并发送一个SYN分组,其中可能还包括其他TCP标志和选项。

  SYN ACK

  服务器给x加1,并选择自己的一个随机序列号y,追加自己的标志和选项,然后返回响应。

  ACK

  客户端给x和y加1并发送握手期间的最后一个ACK分组。

  

  关于《》这篇博客可以给你带来对TCP的更深入的理解。

    其中要记下来的是:

    为了保证服务端能收接受到客户端的信息并能做出正确的应答而进行前两次(第一次和第二次)握手,

    为了保证客户端能够接收到服务端的信息并能做出正确的应答而进行后两次(第二次和第三次)握手。

   

  或者可以记忆下中的描述:

第一次握手:客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认。

第二次握手:服务器端收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k)即SYN+ACK包,此时服务器进入SYN_RECV状态。
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器端进入ESTABLISHED状态,完成三次握手。

(recv -- > receive 接收) (established:英 ɪ'stæblɪʃt 确定的;已制定的,已建立的)

转载地址:http://lbbbm.baihongyu.com/

你可能感兴趣的文章
c#获取当前页面名字
查看>>
客户端自动化技术漫谈
查看>>
mysql 优化之 查询
查看>>
TCP协议中的三次握手和四次挥手(图解)
查看>>
YII assets使用
查看>>
未来已来——工作空间 WorkSpace 和物联网 IoT (2)
查看>>
从零开始玩人工智能-机器人服务-05
查看>>
Google API V2申请及Google Map简单应用例子
查看>>
CXF开发WebService客户端
查看>>
实现一个简单的等待进度盘
查看>>
安全、高效、专业 —— 码云企业版
查看>>
PHP全角转半角
查看>>
GetMessage()与PeekMessage(),以及WM_PAINT消息相关
查看>>
谷歌阻止宏基搭载不兼容的Android设备
查看>>
MySql双机热备解决方案
查看>>
接受数据的三种方式
查看>>
在线参考
查看>>
关于MyEclipse工程部署不能实时同步到Tomcat问题的解决
查看>>
本地MySQL数据库要访问远程MySQL数据库的表中的数据的实现
查看>>
一次完整的HTTP请求所经历的7个步骤
查看>>