• tcp、netstat、dns


    传输层协议与应用
    掌握TCP的封装和工作原理
    掌握UDP的封装和工作原理
    了解常用的TCP和UDP端口号
    对TCP和UDP首部能够进行分析
    传输层的作用
    IP层提供点到点的连接
    传输层提供端到端的连接
    传输层的协议
    TCP(Transmission Control Protocol)
    • 传输控制协议
    • 可靠的、面向连接的协议
    • 传输效率低
    UDP(User Datagram Protocol)
    • 用户数据报协议
    • 不可靠的、无连接的服务
    • 传输效率高
    TCP的工作原理
    TCP的封装格式
    连接与断开
    流量控制
    拥塞控制
    差错控制
    计时器
    TCP的封装格式
    | 0 -----------------------------------------------15 | 16 ------------------------------------------------ 31 |
    源端口号
    目标端口号
    32位序列号
    32位确认号
    4位首部长度
    保留 (6位)
    U R G
    A C K
    P S H
    R S T
    S Y N
    F I N
    16位窗口大小
    16位校验和
    16位紧急指针
    可选项
    数据
    发送TCP进程对应的端口号
    目标端接收进
    0 ~ 232-1范围内,数据段标记,用于到目的端对到达包的重组
    0 ~ 232-1范围内,对发送端的确认信息,告诉发送端这个序号之前的数据段都收到了
    紧急指针有效位,与16位紧急指针配合使用
    确认序列号有效位,表明该数据包包含确认信息
    通知接收端立即将数据提交给用户进程,不在缓存中停留,等待更多的数据
    为1时,请求建立TCP连接
    为1时,请求建立连接
    为1时,数据发送完毕,请求断开连接
    滑动窗口的大小,指明本地可接收数据的字节数
    TCP的连接-三次握手
    TCP的四次断开
    TCP的流控机制-滑动窗口
    a.通报窗口大小为3
    b.发送窗口大小为3
    c.缓冲区满
    d.应用程序读取了1个数据段
    e.通报窗口大小为1
    f.实际发送窗口大小变为1
    TCP的流控机制-拥塞控制2-1
    TCP的流控机制-拥塞控制2-2
    TCP的差错控制
    TCP差错控制的3种方式
    • 校验和
    • 确认
    • 受损伤的数据段
    • 丢失的数据段
    • 重复的数据段
    • 失序的数据段
    • 确认的丢失
    • 超时
    TCP的计时器41
    重传计时器-为了控制丢失的数据段
    TCP的计时器42
    TCP的计时器43
    保活计时器-防止两个TCP之间的连接长时间的空闲
    TCP的计时器44
    时间等待计时器-连接终止期间使用的
    在发送了最后一个ACK后,不立即关闭连接,而是等待一段时间,保证能接收到重复的FIN数据段。
    TCP的应用
    端口
    协议
    说明
    21
    FTP
    文件传输协议,用于上传、下载
    23
    Telnet
    用于远程登录,通过连接目标计算机的这一端口,得到验证后可以远程控制管理目标计算机
    25
    SMTP
    简单邮件传输协议,用于发送邮件
    53
    DNS
    域名服务,当用户输入网站的名称后,由DNS负责将它解析成IP地址,这个过程中用到的端口号是53
    80
    HTTP
    超文本传输协议,通过HTTP实现网络上超文本的传输
    阶段总结
    TCP的封装格式
    TCP的连接与断开
    流控机制
    拥塞控制
    差错控制
    计时器
    UDP的封装格式
    |0-------------------------------------------------------15|16-----------------------------------------------------31|
    16位源端口号
    16位目标端口号
    16UDP长度
    16UDP校验和
    数据
    发送端的UDP进程端口号
    接收端的UDP进程端口号
    包含数据的长度,可以算出数据的结束位置
    UDP的差错控制(可选)
    UDP的使用
    端口
    协议
    说明
    69
    TFTP
    简单文件传输协议
    53
    DNS
    域名服务
    123
    NTP
    网络时间协议
    111
    RPC
    远程过程调用
    DNS服务器支持TCP和UDP两种协议的查询方式,而且端口都是53。大多数的查询都是UDP查询的,一般需要TCP查询的有两种情况:
    • ①当查询数据较大以至于产生了数据分段,这时,需要利用TCP的分片能力来进行数据传输。
    • ②当主(master)服务器和辅(slave)服务器之间数据同步通信的时候。
    UDP的流控和差错控制
    UDP没有流控机制
    UDP只有校验和来提供差错控制
    需要上层协议来提供差错控制:例如TFTP协议
    TCP/IP协议栈
    本章总结
    阶段练习
    在TCP中如何防止数据段的丢失?
    如果接收方的缓存已经满了,接收方会向发送发发送什么样的确认信息?发送方收到后会怎么处理?
    DNS
    浏览一个网站
    域名需要解析为IP
    解析由DNS服务器完成
    解析顺序:
    1、找本地文件
    • linux
    /etc/hosts/
    • Windows
    C:WindowsSystem32driversetchosts
    2、本地DNS缓存
    3、网络上的DNS服务器
    Linux的DNS服务器指定vim /etc/reslov.conf
    nameserver 114.114.114.114
    :x
    应用层
    http


    传输层
    TCP
    80
    53455
    网络层
    IP
    192.168.

    数据链路层
    MAC
    aa
    bb
    物理层


  • 相关阅读:
    [ELK] Elasticsearch 安装/配置、启动/停止、加节点/重启
    [ELK] Elastic Stack 的安全性预览
    [Gin] gin.H{} 与 map[string]interface{}
    [Go] 浅谈 Golang struct 与 PHP class 的相似
    [FAQ] Git 修改最后一次的提交人和提交时间 ?
    [Blockchain] 开发完真实的 DApp 后才能得出的结论与看法
    Android 5.0 Phone初始化分析
    推荐一个Android开发懒人库 -- ButterKnife
    ffmpeg 移植到 android 并使用
    为app录制展示gif
  • 原文地址:https://www.cnblogs.com/qluzzh/p/10306255.html
Copyright © 2020-2023  润新知