OSI-传输层
OSI-传输层
端口号(2字节
SYN(1bit)
ACK(1bit)
会话多路复用(为什么一个IP地址可以做很多事情?)
源端口地址可以不同
五元组(世界上没有相同的2个五元组)
源IP地址-目的IP地址-源端口号-目的端口号-协议号
端口
0-65535
0-1023 知名端口号
1024-65535
| 端口号 | 应用程序 | 中文名字 | 协议 |
|---|---|---|---|
| 20/21 | FTP | 文件传输协议(传大文件的) | TCP |
| 22 | SSH | 远程管理应用(安全,加密) | TCP |
| 23 | telent | 远程管用协议(不安全) | TCP |
| 25 | SMTP | 简单邮件传输协议(只管发邮件) | TCP |
| 53 | DNS | 域名解析协议 | UDP/TCP |
| 69 | TFTP | 传小文件的 | UDP |
| 80 | HTTP | 超文本传输协议 | TCP |
| 110 | POP3 | 收邮件 | TCP |
| 161/162 | SNMP | 网络管理协议 | UDP |
| 179 | BGP | 外部网关路由协议 | TCP |
| 443 | HTTPS | (HTTP+SSL)安全的http | TCP |
| 520 | RIP | 动态路由协议 | UDP |
| 521 | RIPng | 下一代动态路由协议 | UDP |
TCP的可靠性
可靠性的基础
1.数据传输是有序的
2.数据传输是有确认机制的
3.有数据重传机制
4.可靠性的前提是建立一条连接
TCP三次握手

1.第一次握手:Client想要和Sever建立连接,随机产生一个序列号seq=j,将标志位SYN置为1,并将数据包发送给Server,Clinet进入SYN_SENT状态,等待Sever确认。
2.第二次握手:Sever收到数据包知道Client想要建立连接,SYN标志位置为1表示请求和对方建立连接,ACK标志位置为1表示同意建立连接,ack=J+1,client端的seq告诉你我要发数据了发x个,server端发送的x+1是告诉对方,你发的x个数据包我都收到了(确认作用),下次就从x+1开始发吧,发送自己随机产生的序列号seq=K,Server进入SYN_RCVD状态。
3.第三次握手:Client收到确认后,检查ack是否为J+1,ACk是否为1,如果正确则将标志位ACK置为1,ack=K+1,表示收到K之前的数据,并将数据包发送给Server,Server检查ack是否为K+1,ACK是否为1,如果正确则连接建立成功,Client和Server进入ESTABLISHED状态,完成三次握手,随后Client与Server之间可以开始传输数据了。
具体参考博客https://www.cnblogs.com/Qing-840/p/9283367.html
https://www.cnblogs.com/lms0755/p/9053119.html
https://blog.csdn.net/qq_38950316/article/details/81087809
OSI-传输层的更多相关文章
- osi七层模型和两主机传输过程:
osi七层模型和两主机传输过程: http://www.zhihu.com/question/24002080/answer/31817536 注:笔记部分可能参考其他作者内容的一个记录,仅为加深自 ...
- OSI模型第四层传输层--UDP协议
1.udp协议 UDP是OSI参考模型中一种无连接的传输层协议,它主要用于不要求分组顺序到达的传输中,分组传输顺序的检查与排序由应用层完成[2] ,提供面向事务的简单不可靠信息传送服务.UDP 协议 ...
- 软件开发架构介绍||OSI七层协议之物理层、数据链路层、网络层、传输层(mac地址、ip协议、断开协议、tcp协议之三次握手四次挥手)
一.网络编程 软件开发架构 C/S架构 C:客户端 想体验服务的时候才会去找服务端体验服务 S:服务端 24小时不间断的提供服务,即时监听,随时待命 B/S架构 B:浏览器 想体验服务的时候 ...
- 如何生动形象、切中要点地讲解 OSI 七层模型和两主机传输过程
作者:繁星亮与鲍包包链接:https://www.zhihu.com/question/24002080/answer/31817536来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转 ...
- 1.关于OSI七层模型和两主机传输过程
先回顾一下OSI七层模型有啥内容 (OSI模型与TCP/IP模型类似,这里只针对OSI模型展开) OSI参考模型为什么弃用呢?它的分层过于细致了,以至于使网络的体系结构变得复杂臃肿,有使用重叠的嫌疑, ...
- OSI模型——传输层
OSI模型——传输层 运输层 运输层概述 运输层提供应用层端到端通信服务,通俗的讲,两个主机通讯,也就是应用层上的进程之间的通信,也就是转换为进程和进程之间的通信了,我们之前学到网络层,IP协议能将分 ...
- OSI参考模型(应用层、表示层、会话层、传输层、网络层、数据链路层、物理层)
文章转自:https://blog.csdn.net/weixin_43914604/article/details/104589085 学习课程:<2019王道考研计算机网络> 学习目的 ...
- OSI模型第四层传输层--TCP协议
1.传输层2个协议tcp和udp 2.tcp的可靠性(挂号信). 面向链接的:类似寄挂号信,对方收到了并且能够确认.所以也是可靠的传输. 最大报文传输:两端可以协商传输报文大小.(协商一个报文的大小) ...
- OSI七层模型详解 TCP/IP协议
总结 OSI中的层 功能 TCP/IP协议族 应用层 文件传输,电子邮件,文件服务,虚拟终端 TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet 等等 表示层 数据格式化,代码转 ...
- python网络编程-OSI七层模型详解
OSI 七层模型通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯,因此其最主要的功能就是帮助不同类型的主机实现数据传输 . 完成中继功能的节点通常称为中继系统.在OSI七层模型中,处于 ...
随机推荐
- 提高首屏页面加载速度,解决vue-cli打包后单个文件过大的问题
本教程是针对vue-cli3以上的版本,其实原理都大同小异,这个demo为vue-cli直接创建的项目,并在main.js中引入了echart.element-ui.lodash 首先看demo打包后 ...
- C/C++顺序数据结构——动态数组测试
这是一篇顺序表数据结构——动态数组的测试, 实现 //初始化数组 //插入 //根据位置删除 //根据值删除 //查找 //打印 //释放动态数组的内存 //清空数组 //获得动态数组容量 //获得动 ...
- numpy.array 中的运算
简单运算 现在有有个需求,给定一个数组,让数组中每一个数乘以2,怎么做呢 n = 10 L = [i for i in range(n)] L # [0, 1, 2, 3, 4, 5, 6, 7, 8 ...
- MySQL8.0 redo日志系统优化
背景 现在主流的数据库系统的故障恢复逻辑都是基于经典的ARIES协议,也就是基于undo日志+redo日志的来进行故障恢复.redo日志是物理日志,一般采用WAL(Write-Ahead-Loggin ...
- python学习之【第四篇】:Python中的列表及其所具有的方法
1.前言 列表是Python中最常用的数据类型之一,是以[ ]括起来,每个元素以逗号隔开,而且里面可以存放各种数据类型,而且列表是有序的,有索引值,可切片,方便取值. 2.创建列表 li = ['he ...
- mjpg-stream 视频服务 (1)| 简介与配置树莓派使用
源码地址为:https://github.com/jacksonliam/mjpg-streamer Mjpg简介: (1)mjpg-streamer是一个命令行应用程序,它将JPEG帧从一个或多个输 ...
- 006.Kubernetes二进制部署ETCD
一 部署ETCD集群 1.1 安装ETCD etcd 是基于 Raft 的分布式 key-value 存储系统,由 CoreOS 开发,常用于服务发现.共享配置以及并发控制(如 leader 选举.分 ...
- Convolutional Sequence to Sequence Learning 论文笔记
目录 简介 模型结构 Position Embeddings GLU or GRU Convolutional Block Structure Multi-step Attention Normali ...
- Netty处理器重要概念
1.Netty的处理器可以分为两类:入站处理器和出战处理器 2.入站处理器顶层是ChannelInboundHandler,出战处理器顶层是ChannelOutboundHandler 3.数据处理时 ...
- 了解Spring的基本概念
参考资料:https://www.jianshu.com/p/1c483bd8fd6d 在正式学习Spring框架之前,肯定有很多疑问,比如说: 1.Spring中经常出现的IOC.AOP.DI是什么 ...