计算机网络(一)

OSI开放式互联参考模型

发送方层次由上向下,接收方层次由下向上
TCP/IP族 是OSI的实现

网络七层数据格式功能TCP/IP协议族
应用层Data(数据)文件传输、电子邮件、文件服务、虚拟终端TFTP HTTP SNMP FTP SMTP DNS Telnet
表示层Data(数据)数据格式化、代码转换、数据加密-
会话层Data(数据)建立或解除与别的节点的联系-
传输层分段(数组组织成数据段segment)提供端对端的接口TCP UDP
网络层分割重新组成数据包Packet为数据包选择路由IP ICMP RIP OSPF BCP IGMP
数据链路层将比特信息封装成数据帧frame传输有地址的帧以及错误检测功能SLIP CSLIP PPP ARP RARP MTU
物理层传输比特流以二进制的数据形式在物理媒体上传输数据ISO02110 IEEE802 IEEE802.2

TCP协议

  • 面向连接的、可靠的、基于字节流的传输层通信协议
  • 将应用层的数据流分割成报文段并发送给目标节点的TCP层
  • 数据包都有序号,对方收到则发送ACK确认,未收到则重试
  • 使用校验和来校验数据在传输过程中是否有误

TCP三次握手
握手是为了建立连接,TCP三次握手如下:
在这里插入图片描述
(有时候小写的ack也会写成Ack,与ACK不是一个东西)

  1. 第一次握手的时候SYN=1表示要创建连接同时初始需要seq = x(x可以指代任意数)
  2. 服务端同意连接发送确认报文SYN=1,ACK=1,seq=y(为自己的确认序列初始一个y),ack=x+1(回应请求的seq)
  3. 收到服务端确认报文,发送确认报文这时候不需要SYN,只需要ACK=1,seq=x+1,ack=y+1(响应服务端的seq)
    总结:
    在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。
    第一次握手:建立连接时,客户端发送SYN包(syn=x)到服务器,并进入SYN_SEND状态,等待服务器确认。
    第二次握手:服务器端接收到SYN包,必须确认客户端的SYN(ack = x+1),同时自己也发一个SYN包(syn=y),即SYN+ACK包,此时服务器进入SYN_RECV状态。
    第三次握手:客户端收到服务端的SYN+ACK包,向服务器发送确认包ACK(ack=y+1),此包发送完毕,客户端和服务端进入ESTABLISHED状态完成三次握手。

TCP三次连接是防止客户端如果有一次发送请求超时,然后又重新发送请求到服务端已经处理完,然后服务端在之后一段时间重新收到超时的请求,直接处理。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值