抓包整理————tcp 协议[八]
前言
简单介绍一下tcp 协议。
正文
tcp历史:
advanced research projects agency network:

1973年: tcp/ip 协议

tcpv4 协议分层后的网络时间

设置理念:

tcp 解决了什么问题:

TCP:
面向连接的、可靠的、基于字 节流的传输层通信协议
IP:根据IP地址穿越网络传送数据

不可靠的网络传输:
1.网络设备
2.主机
3.物理链路

在 IP 协议之上,解决网络通讯可依赖问题
• 点对点(不能广播、多播),面向连接
• 双向传递(全双工) • 字节流:打包成报文段、保证有序接收、重复报文自动丢弃
• 缺点:不维护应用报文的边界(对比 HTTP、GRPC)
• 优点:不强制要求应用必须离散的创建数据块,不限制数据块大小
• 流量缓冲:解决速度不匹配问题 (滑动窗口)
• 可靠的传输服务(保证可达,丢包时通过重发进而增加时延实现可靠性)
• 拥塞控制(不仅考虑到双方的问题【流量缓存】,考虑到双方直接的通讯的网络)
tcp 报文格式:

ip头部:

udp 头部:

tcp 协议的任务:
- 主机内的进程寻址(port)
- 创建、管理、终止连接
- 处理并将字节(8bit)流打包成报文段(如ip 报文)
- 传输数据
- 保持可靠与传输质量
- 流控制和拥塞控制
标识一个连接:

tcp 报文段:


结
都是一些基础,下一节抓包演练。
抓包整理————tcp 协议[八]的更多相关文章
- tcpdump抓包二进制tcp协议详细分析
1.tcpdump -i eth0 port 11751 and src host 192.168.1.34 -x -s0 tcpdump: verbose output suppressed, us ...
- Wireshark抓包分析TCP协议
版权声明:本文为作者原创文章,可以随意转载,但必须在明确位置表明出处!!! 之前有一篇文章介绍了http协议「初识http协议」, http协议协议是基于tcp协议的,所以作者觉得有必要针对tcp ...
- 抓包整理————ip 协议一[十二]
前言 简单介绍一下ip协议. 正文 先来看下ip协议在网络层的哪一层: 应用层 表示层 会话层 传输层 网络层 数据链路层 物理层 ip 层就在网络层: 其实很好想象哈,就是因为每台机器起码有一个ip ...
- 抓包整理————ip 协议四[十五]
前言 简单了解一下ip 协议选路问题. 正文 比如host1 到 host2是直接传输,因为host1和 host2 是同一交换机,直接arp表知道对方的mac. 第二种是他们是不同网段之间通信. 第 ...
- 网络协议抓包分析——TCP传输控制协议(连接建立、释放)
前言 TCP协议为数据提供可靠的端到端的传输,处理数据的顺序和错误恢复,保证数据能够到达其应到达的地方.TCP协议是面向连接的,在两台主机使用TCP协议进行通信之前,会先建立一个TCP连接(三次握手) ...
- wireshark抓包分析——TCP/IP协议
本文来自网易云社区 当我们需要跟踪网络有关的信息时,经常会说"抓包".这里抓包究竟是什么?抓到的包又能分析出什么?在本文中以TCP/IP协议为例,简单介绍TCP/IP协议以及如何通 ...
- Wireshark网络抓包(三)——网络协议
一.ARP协议 ARP(Address Resolution Protocol)地址解析协议,将IP地址解析成MAC地址. IP地址在OSI模型第三层,MAC地址在OSI第二层,彼此不直接通信: 在通 ...
- wireshark 抓包分析 TCPIP协议的握手
wireshark 抓包分析 TCPIP协议的握手 原网址:http://www.cnblogs.com/TankXiao/archive/2012/10/10/2711777.html 之前写过一篇 ...
- Wireshark抓包分析TCP建立/释放链接的过程以及状态变迁分析
Wireshark抓包分析TCP建立/释放链接的过程以及状态变迁分析 一.介绍计算机网络体系结构 1.计算机的网络体系结构 在抓包分析TCP建立链接之前首先了解下计算机的网络通信的模型,我相信学习过计 ...
- Wireshark数据抓包分析——网络协议篇
Wireshark数据抓包分析--网络协议篇 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZGF4dWViYQ==/ ...
随机推荐
- java 携带session 前台传递cookie 跨域解决方案 vue + java
前台 axios 设置 withCredentials: true 后台设置 跨域 header("Access-Control-Allow-Origin","源地址&q ...
- SourceTree 合并DEV分支到master
SourceTree 合并DEV分支到master 1 切换到master分支 2 右键dev分支,选择 合并dev至当前分支 3 提交代码
- 没有 Release 文件的解决方法
https://blog.csdn.net/weixin_44903509/article/details/108825738 sudo apt-get update 出现问题 E: 仓库 " ...
- Github+picGo搭建图床(搭配Typora)
使用Github+picGo搭建图床,保姆级教程来了 - 转载自知乎 (zhihu.com) 1. 注册一个Github账号 首先你需要一个github账号,如果没有的话,先注册. github官网地 ...
- C++多态底层原理:虚函数表
虚函数表 C++ 对象模型 在有虚函数的情况下,C++对象的模型可以概括为:虚函数表指针+数据struct.在对象所在的内存里:前8个字节(64位系统)是虚函数表所在地址,后边是对象中的member ...
- linux介绍、安装、shell
1-Linux发展介绍 零 什么是Linux Linux:和我们常见的Windows一样,都是操作系统,但不同的是: Windows: 收费,不开源,主要用于日常办公.游戏.娱乐多一些. Linux: ...
- 面试官:volatile如何保证可见性的,具体如何实现?
写在开头 在之前的几篇博文中,我们都提到了 volatile 关键字,这个单词中文释义为:不稳定的,易挥发的,在Java中代表变量修饰符,用来修饰会被不同线程访问和修改的变量,对于方法,代码块,方法参 ...
- Python 如何通过网易163邮箱自动发送邮件
一.发送邮件的前提是必须开通发件服务器获取对应授权密码. 二.对应代码如下所示 import smtplib from email.mime.text import MIMEText from ema ...
- C#OpenCvSharp YOLO v3 Demo
效果 项目 代码 using System; using System.Collections.Generic; using System.ComponentModel; using System.D ...
- Twitter的分布式自增ID算法snowflake(雪花算法) C#和Java版
概述 分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID, 但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的. 有些时候我们希望能使用一 ...