zoukankan      html  css  js  c++  java
  • 网络基础——TCP

    TCP和UDP协议特点

    1.TCP

      1>.传输控制协议

      2>.可靠的、面向连接的协议

      3>.传输效率低

    2.UDP

      1>.用户数据报协议

      2>.不可靠的、无连接的服务

      3>.传输效率高

    TCP

    1.TCP首部格式

    源端口、目标端口

    序列号、确认序列号

    如序列号为x则确认序列号为x+1

    TCP首部长度至少20字节

    控制位:

    syn:建立连接时将这个值设为1

    ACK:当ACK=1表示确认,ACK=0表示确认无效

    FIN:FIN=1表示断开连接请求

    RST:RST=1表示重新建立TCP连接

    URG:紧急指针有效位

    PSH:此标志位为1时要求接收方尽快将数据段送达应用层。

    窗口值:表示本地可接收数据的数目.当网络通畅时窗口值变大加快传输速度,不稳定时该值减小保证数据的可靠传输,TCP协议中的流量控制机制就是依靠变化窗口大小实现的。

    校验和:用来做差错控制

    紧急指针:和URG配合使用,当URG=1时有效

    2. TCP的三次握手与四次断开

    1>.三次握手

    2>. TCP的四次断开

     

    TCP的流控机制:

    TCP使用滑动窗口实现流量控制

    4>.TCP的拥塞控制:

    实际发送数据的窗口采用发送方和接收方协商的窗口与拥塞窗口中的最小值

    5>.TCP的差错控制:

    3种方式:

    校验和

    确认

    超时

    6>.TCP的计时器:

    重传计时器-为了控制丢失的数据段

    坚持计时器-为了防止零窗口死锁

    保活计时器-防止两个TCP之间的连接长时间的空闲

    时间等待计时器-连接终止期间使用的,在发送了最后一个ACK后,不立即关闭连接,而是等待一段时间,保证能接收到重复的FIN数据段。

    7>.TCP的应用

    端口

    协议

    说  明

    21

    FTP

    FTP服务器所开放的控制端口

    23

    TELNET

    用于远程登录,可以远程控制管理目标计算机

    25

    SMTP

    SMTP服务器开放的端口,用于发送邮件

    80

    HTTP

    超文本传输协议

    53

    DNS

    域名服务,当用户输入网站的名称后,由DNS负责将它解析成IP地址,这个过程中用到的端口号是53

  • 相关阅读:
    MySql常用数据操作
    使用requests+BeaBeautiful Soup爬取妹子图图片
    抓取猫眼电影排行
    Exec执行拼接字符串时遇到的问题及Sql执行函数时需要注意的事项
    c#小知识点
    MVVM 与 sql
    Dictionary
    sql表信息查询
    XAML特殊字符
    编程细节
  • 原文地址:https://www.cnblogs.com/a-ant/p/10879019.html
Copyright © 2011-2022 走看看