传输层

计算机网络运输层

谁说我不能喝 提交于 2020-02-04 05:03:13
网络层只把分组发送到目的主机,但是真正通信的并不是主机而是主机中的进程。传输层提供了进程间的逻辑通信,传输层向高层用户屏蔽了下面网络层的核心细节,使应用程序看起来像是在两个传输层实体之间有一条端到端的逻辑通信信道 目录 1.UDP和TCP的特点 2.UDP首部格式 3.TCP首部格式 4.TCP三次握手 三次握手的原因 5.TCP的四次挥手 四次挥手的原因 6.TCP可靠传输 7.TCP滑动窗口 8.TCP流量控制 9.TCP拥堵 1)慢开始与拥堵避免 2)快重传与快恢复 1.UDP和TCP的特点 用户数据报协议 UDP(User Datagram Protocol)是无连接的,尽最大可能交付,没有拥塞控制,面向报文(对于应用程序传下来的报文不合并也不拆分,只是添加 UDP 首部),支持一对一、一对多、多对一和多对多的交互通信。 传输控制协议 TCP(Transmission Control Protocol)是面向连接的,提供可靠交付,有流量控制,拥塞控制,提供全双工通信,面向字节流(把应用层传下来的报文看成字节流,把字节流组织成大小不等的数据块),每一条 TCP 连接只能是点对点的(一对一)。 2.UDP首部格式 首部字段只有 8 个字节,包括源端口、目的端口、长度、检验和。12 字节的伪首部是为了计算检验和临时添加的。 3.TCP首部格式 序号 :用于对字节流进行编号

OSI七层模型

心已入冬 提交于 2020-02-04 01:37:47
由来: ios国际标准化组装 按照自己的理解讲:七层模型是计算机技术的一种规范,上三规定应该做出怎样的数据,下四层涉及具体的传输过程。 说具体一点: 物理层: 相邻节点的传输,决定了光电比特流的传输规范和物理接口等内容。 数据链路层: 涉及同一个广播域通讯的内容,负责讲数据包封装成固定格式的数据帧。可以根据数据帧中的源mac和目标mac来完成寻址。 –(每个网卡上都烧录的一个mac地址,也就是能上网的设备必有至少一个mac地址) 网络层: 到了网络层就不是一个小心网络那么简单了,可以通过路由器互联网进行交流。这时候光靠mac寻址必然不可能 这里就引入了IP的概念,通过源目ip地址来发送数据。 传输层: 此层有两种重要协议UDP TCP/IP 此处不展开。 分段:将上三层加工处理好的数据按MTU值进行切分; MTU:最大传输单元 – 默认1500 端口号: 1-1023 静态端口-著名端口 固定给常见服务 1024-65535 动态端口 – 高端口. 随机标记客户端的进程 此层的功能就一句话: 实现端对端的连接 。 -( 点到点是物理拓扑,如光纤,就必须是点到点连接,DDN专线也是,即两头各一个机器中间不能有机器。 点到点是网络层的,你传输层只认为我的数据是从a直接到e的,但实际不是这样的,打个比方,传输层好象领导,他发布命令:要干什么什么事,但真正干的不是他,真正干的是员工

网络基础

☆樱花仙子☆ 提交于 2020-01-31 19:30:24
TCP/IP OSI 应用层                             应用层 表示层 会话层       主机到主机层(TCP)(又称传输层) 传输层 网络层(IP)(又称互联层) 网络层 网络接口层(又称链路层) 数据链路层 物理层 OSI中的层 功能层 TCP/IP协议族 应用层       文件传输、电子邮件、文件服务、虚拟终端         TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet等等       表示层 翻译、加密、压缩   没有协议 会话层 对话控制、建立同步点 (续传) 没有协议 传输层 端口寻址、分段重组、流量、差错控制 TCP,UDP 网络层 逻辑寻址、路由选择 IP,ICMP,OSPF,EIGRP,IGMP 数据链路层 成帧、物理寻址、流量,差错,接入控制 SLIP,CSLIP,PPP,MTY 物理层 设置网络拓扑结构、比特传输、位同步 ISO2110,IEEE802,IEEE802. 来源: https://www.cnblogs.com/bjxingch/p/12246307.html

Tcp/Ip协议

假如想象 提交于 2020-01-31 07:22:32
网络由下往上分为: 物理层-- 数据链路层-- 网络层-- IP协议 传输层-- TCP协议 会话层-- 表示层和应用层-- HTTP协议 1、TCP/IP连接 手机能够使用联网功能是因为手机底层实现了TCP/IP协议,可以使手机终端通过无线网络建立TCP连接。TCP协议可以对上层网络提供接口,使上层网络数据的传输建立在“无差别”的网络之上。 建立起一个TCP连接需要经过“三次握手”: 第一次握手:客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认; 第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态; 第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。 握手过程中传送的包里不包含数据,三次握手完毕后,客户端与服务器才正式开始传送数据。理想状态下,TCP连接一旦建立,在通信双方中的任何一方主动关闭连接之前,TCP 连接都将被一直保持下去。断开连接时服务器和客户端均可以主动发起断开TCP连接的请求,断开过程需要经过“四次握手”(过程就不细写了,就是服务器和客户端交互,最终确定断开). 2、HTTP连接

7.3传(运)输层

时光怂恿深爱的人放手 提交于 2020-01-31 05:46:24
引入传输层的原因: 消除网络层的不可靠性; 向上层屏蔽通信子网的实现细节 弥补上次提出要求和下层提供服务间的差异 资源子网 传输层 通信子网 传输层的作用范围 提供从源端主机到目的端主机的可靠传输。主机进程间(进程端口到进程端口)的通信,IP协议考虑的是协议。 应用进程之间的通信: 运输层提供进程级的访问能力 两个主机进行通信实际上就是两个主机中的应用进程互相通信 应用进程之间的通信又称为端到端的通信 运输层的另一个重要功能就是复用和分用 传输服务 传输实体:完成传输层功能的硬软件; 传输层实体利用网络层提供的服务向高层提供有效、可靠的服务,用服务质量QoS来衡量; 传输层提供两种服务 面向连接的传输服务:连接建立,数据传输,连接释放; 无连接的传输服务:不可靠的传输。 Internet传输协议 传输服务原语 传输服务的要素 寻址方法:定义传输服务访问点TSAP,将应用进程与这些TSAP相连。 在Internet中,TSAP内容如下: (IP address, local port) **服务访问点TSAP: 传输层常用端口号 远方客户程序如何获得服务程序的TSAP? TSAP(Transport Service Access Point) 传输服务访问点 方法1:预先约定、广为人知的(Well-known),比如telnet是(IP地址,端口23); 方法2:从名字服务器

传输层

偶尔善良 提交于 2020-01-29 20:33:51
传输层的功能 为互相通信的应用进程提供了逻辑通信(网络层是为主机之间提供逻辑通信)。 传输层还要对收到的报文进行差错检测。 传输层提供面向连接和无连接的服务。 传输层的端口 协议号: TCP:6 UDP:17 端口(0 - 65535): 熟知端口:0 - 1023 登记端口:RDP 3389 客户端端口: 49152 - 65535 netstat -n | find "ESTABLISHED" 传输层协议 UDP:用户数据报协议,一个数据包就能完成数据通信,不需要建立会话,不需要流量控制,进行不可靠传输。(与DNS服务器进行通信,域名解析,QQ,多播,广播) UDP是无连接的,即发送数据之前不需要建立连接。 UDP使用尽最大努力交付,即不保证可靠交付,同时也不使用拥塞控制。 UDP是面向报文的,UDP没有拥塞控制,很适合多媒体通信的要求。 UDP支持一对一、一对多、多对一和多对多的交换通信。 UDP的首部开销小,只有8个字节。(在传输层加入的首部) TCP:传输控制协议,一个数据包需要将要传输的文件分段传输,建立服务器和客户端之间的会话(进行可靠传输),还具备流量控制功能。 TCP是面向连接的传输层协议。 每一条TCP连接只能有两个端点,每一条TCP连接只能是点对点的。(一对一) TCP连接的端点不是主机,不是主机的IP地址,不是应用进程,也不是传输层的协议端口,而是套接字

Java - 网络编程完全总结

雨燕双飞 提交于 2020-01-29 05:37:33
本文主要是自己在网络编程方面的学习总结,先主要介绍计算机网络方面的相关内容,包括计算机网络基础,OSI参考模型,TCP/IP协议簇,常见的网络协议等等,在此基础上,介绍Java中的网络编程。 一、概述 二、计算机网络 1.网络协议 2.网络体系结构 三、OSI参考模型 四、TCP/IP参考模型 五、常见网络协议 1.TCP协议 2.UDP协议 3.HTTP协议 六、计网常见问题 七、Java网络编程 一、概述 计算机网络是通过传输介质、通信设施和网络通信协议,把分散在不同地点的计算机设备互连起来,实现资源共享和数据传输的系统。网络编程就就是编写程序使联网的两个(或多个)设备(例如计算机)之间进行数据传输。Java语言对网络编程提供了良好的支持,通过其提供的接口我们可以很方便地进行网络编程。下面先对网络编程的一些基础知识进行介绍,最后给出使用Java语言进行网络编程的实例。 二、计算机网络 计算机网络20世纪60年代出现,经历了20世纪70年代、80年代和90年代的发展,进入21世纪后,计算机网络已经成为信息社会的基础设施,深入到人类社会的方方面面,与人们的工作、学习和生活息息相关。 网络协议 如同人与人之间相互交流是需要遵循一定的规矩一样,计算机之间能够进行相互通信是因为它们都共同遵守一定的规则,即网络协议。 网络体系结构 计算机网络是个复杂的系统,按照人们解决复杂问题的方法

TCP/IP的分层管理

心不动则不痛 提交于 2020-01-28 02:24:37
网络基础TCP/IP 我们通常所使用的网络(包括互联网)均是在TCP/IP协议族的基础上运作的。HTTP属于它内部的一个子集 TCP/IP协议族按层次分为: 应用层 , 传输层 , 网络层 和 数据链路层 (更好的划分方法应该是将网络划分为7层) 理解四层: 应用层:决定了向用户提供应用服务时的通信的活动。 HTTP协议处于应用层 传输层:传输层对上层应用层,提供处于网络连接中的两台计算机之间的数据传输。传输层有两个性质不同的协议:TCP(传输 控制器协议)和UDP(用户数据报协议) 网络层(又名网络互联层):用来处理在网络上流动的数据包。 与对方计算机之间通过多台计算机或网络设备进行传输时,网络层所起的作用就是在众多的选项内 选择一条传输路线。 链路层(数据链路层,网络接口层):用来处理网络连接的硬件部分 TCP/IP的通信传输层在这四层中的传输方式: 发送端从应用层往下走,每经过一层时必定会打上一个该层所属的首部信息。接收端则往应用层上走,每经过一层时会把对应的首部消去。数据包装的这种方法称为:封装 例证:以访问某个web页面为例 发送端:   应用层:客户端在应用层依据HTTP协议发出想访问web页面的HTTP请求   传输层:依据TCP协议将从应用层收到的数据 (HTTP请求报文) 进行分割,并在各个报文上打上标记序号及端口号后发给 网络层   网络层:IP协议

图解TCPIP-传输层 端口

[亡魂溺海] 提交于 2020-01-27 05:44:05
1.数据链路:MAC地址 2.网络层:IP地址 3.传输层:端口(port)可称为程序地址. 1.标准既定端口号,知名端口号(Well-Known Port Number):0-1023. 其他端口:1024- 2.时序分配法.客户端没必要确定端口号,由系统来确定. 49152-65535 3.端口号,与传输协议无关,TCP和UDP可以发送到同一个端口处理 来源: CSDN 作者: Claroja 链接: https://blog.csdn.net/claroja/article/details/103525113

华为HCIA复习--传输层协议内容--必看必会

空扰寡人 提交于 2020-01-26 22:04:24
传输层协议 tcp或者udp协议,传输层定义了主机应用程序之间端到端的连通性。传输层中最为常见的两个协议分别是传输控制协议和用户数据协议。 1.TCP:tcp是一种面向连接的传输层协议,提供可靠的传输服务。 2.tcp端口号: ftp:21-20 http:80 telnet:23 smtp:25 端口号是用来区分不同的网络服务, 0-1023是知名端口号,1024-65535是动态端口号 3.tcp头部: tcp端口号: tcp的序列号和确认号: 源端口+目的端口+序列号+确认号 tcp的建立简介 tcp的建立连接过程: tcp通过三次握手建立可靠连接 tcp的传输过程以及流量控制机制–滑动窗口 tcp的关闭 主机在关闭连接之前,要确认收到来自对方的ack udp: udp是一种面向无连接的传输层协议,传输可靠性没有保证 当应用程序对传输的可靠性要求不高,但是对传输速度要求高的时候。 udp头部: udp头部仅占8字节,传输数据时没有机制。 数据转发的过程: tcp/ip协议簇和底层协议的配合,保证数据的端到端的传输。 应用层-传输层-网络层-数据链路层-物理层 数据转发过程的概述: 数据包在相同的网段内或不同网段之间转发所依据的原理基本一致。 TCP封装: 当主机建立了到达目的地址的tcp连接后,便开始对应用层的数据进行封装 数据帧转发过程: 如果主机工作在半双工状态下