传输层

OSI网络体系结构

痞子三分冷 提交于 2020-03-14 12:13:25
为把在一个网络结构下开发的系统与在另一个网络结构下开发的系统互连起来,以实现更高一级的应用,使异种机之间的通信成为可能,便于网络结构标准化,国际标准化组织(ISO)于1983年形成了开放系统互连基本参考模OSI(Open Systems Interconnection 简称OSI)的正式文件。所谓开放,是指只要按OSI标准来办,什么样的系统均可互相通信。 在OSI参考模型中,把网络协议分为七层,从下到上依次为物理层,数据链路层,网络层,传输层,会话层,表示层,应用层。 OSI参考模型各层的作用: 物理层:在物理媒体上传输原始的数据比特流。 数据链路层:将数据分成一个个数据帧,以数据帧为单位传输。有应有答,遇错重发。 网络层:将数据分成一定长度的分组,将分组穿过通信子网,从信源选择路径后传到信宿。 传输层:提供不具体网络的高效、经济、透明的端到端数据传输服务。 会话层:进程间的对话也称为会话,会话层管理不同主机上各进程间的对话。 表示层:提供数据信息的语法表示变换。 应用层:提供应用程序访问OSI环境的手段。 对等层协议之间交换的信息单元统称为协议数据单元(PDU,Protocol Data Unit):   传输层——数据(Segment)   网络层——数据(Packet)   数据链路层——数据(Frame)   物理层——(bit) OSI网络体系结构各层协议: 一、应用层

RPC调用和HTTP调用的区别

余生颓废 提交于 2020-03-11 20:23:19
很长时间以来都没有怎么好好搞清楚RPC(即Remote Procedure Call,远程过程调用)和HTTP调用的区别,不都是写一个服务然后在客户端调用么?这里请允许我迷之一笑~Naive!本文简单地介绍一下两种形式的C/S架构,先说一下他们最本质的区别,就是RPC主要是基于TCP/IP协议的,而HTTP服务主要是基于HTTP协议的,我们都知道HTTP协议是在传输层协议TCP之上的,所以效率来看的话,RPC当然是要更胜一筹啦!下面来具体说一说RPC服务和HTTP服务。 OSI网络七层模型 在说RPC和HTTP的区别之前,我觉的有必要了解一下OSI的七层网络结构模型(虽然实际应用中基本上都是五层),它可以分为以下几层: (从上到下) 第一层:应用层。定义了用于在网络中进行通信和传输数据的接口; 第二层:表示层。定义不同的系统中数据的传输格式,编码和解码规范等; 第三层:会话层。管理用户的会话,控制用户间逻辑连接的建立和中断; 第四层:传输层。管理着网络中的端到端的数据传输; 第五层:网络层。定义网络设备间如何传输数据; 第六层:链路层。将上面的网络层的数据包封装成数据帧,便于物理层传输; 第七层:物理层。这一层主要就是传输这些二进制数据。 实际应用过程中,五层协议结构里面是没有表示层和会话层的。应该说它们和应用层合并了。我们应该将重点放在应用层和传输层这两个层面

JAVA RMI 原理和使用浅析

隐身守侯 提交于 2020-03-11 16:50:21
定义 RMI: 远程方法调用( Remote Method Invocation ) ,它支持存储于 不同地址空间 的 程序级对象 之间彼此进行通信,实现远程对象之间的无缝远程调用。 Java RMI : 用于 不同虚拟机之间 的通信,这些虚拟机可以在不同的主机上、也可以在同一个主机上;一个虚拟机中的对象调用另一个虚拟上中的对象的方法,只不过是允许被远程调用的对象要通过一些标志加以标识。 RMI远程调用步骤 RMI的交互图 : RMI由3个部分构成: 第一个是 rmiregistry ( 远程方法调用注册,JDK提供的一个可以独立运行的程序,在bin目录下,名为rmiregistry.exe )。客户端端和服务端都有rmiregistry.exe, 客户端基于他进行对象发现,服务端基于他进行对象注册。 第二个是 server端 的程序, 对外提供远程对象 第三个是 client端 的程序,想要 调用远程对象 的方法。 首先,先 启动rmiregistry服务 ,启动时可以指定服务监听的端口,也可以使用默认的端口(1099)。 其次,server端在本地先实例化一个提供服务的实现类,然后通过RMI提供的Naming/Context/Registry(下面实例用的Registry)等类的bind或rebind方法将刚才实例化好的实现类注册到rmiregistry上并对外暴露一个名称。

数据帧、数据包、数据报三者区别

六月ゝ 毕业季﹏ 提交于 2020-03-11 14:41:24
数据帧(Frame):数据链路层,传递的单位是frame 帧,就是数据链路层的协议数据单元,它包括三部分:帧头,里面有mac地址,通过这个地址可以在底层的交换机这个层面里顺着网线找到你的计算机。数据部分,ip数据包,意思是使用ip地址定位的一个数据包。帧尾。其中,帧头和帧尾包含一些必要的控制信息,比如同步信息、地址信息、差错控制信息等;数据部分则包含网络层传下来的数据,比如ip数据包。 数据包(Packet):TCP/IP协议通信传输中的数据单位,处于网络层,在局域网中,“包”是包含在“帧”里的。packet是整个tcpip通信协议里网络层的传输单位,也是最小的单位。一个ip包里有什么呢?跟帧一样,有着目的地的ip地址及其来源的ip地址和其他的校验信息。它也被称为头。那么还有什么呢?来自传输层托付给自己待传送的信息。这个信息会被分成多个ip数据包发送出去。 所以网络层传递的是ip包,ip包里是待传输消息的一部分。 数据报(Datagram):现在来到传输层了,传输层直接接受来自你的消息,小到你给朋友发个晚安,大到你给别人传递个文件,只要提供对方的ip地址(还有端口号),其它的都交给传输层帮助你实现。就很像你与快递公司的关系。一种发送前会先探路,保证送货到家的,这是tcp协议,另一种只管寄,不管是否查收的就是udp。这两种协议都会在发送前把你的消息拆分成多个ip数据包来传输

认识计算机网络

不问归期 提交于 2020-03-11 04:41:15
计算机自诞生伊始,经历了一系列演变与发展。大型通用机计算机、超级计算机、小型机、个人电脑、工作站、便携式电以及现如今的智能手机终端都是这一过程的产物。它们性能逐年增强,价格却逐年下降,机体规模也在逐渐变小。随着计算机的发展,人们不再局限于单机模式,而是将一个个计算机连接在一起,形成一个计算机网络。从而实现信息共享,同事在能在两台物理位置较远的机器之间即时传递消息。计算机网络根据规模可以分为WAN(Wide Area Network,广域网)和LAN(Local Area Network,局域网)。将有业务往来的计算机连在一起便组成了私有网络,将多个私有网络连接一起就成了为公众使用的互联网。随着互联网爆发性地发展与普及,信息网络如同我们身边的空气,触手可及。但是在以前,对一般人来说使用一台计算机都不是那么容易的事情。 计算机与网络大致可以分为7个阶段: 一、20世纪50年代的批处理时代 二、20世纪60年代的分时系统时代 三、20世纪70年代的计算机间通信时代 四、20世纪80年代的计算机网络时代 五、20世纪90年代的互联网普及时代 六、2000年的以互联网为中心的时代 七、2010年的无论何时何地一切皆TCP/IP的网络时代 互联网是由许多独立发展的网络通信技术融合而成。能够使它们之间不断融合并实现统一的正是TCP/IP技术。 那什么是TCP/IP呢? TCP

7.传输层协议:TCP/UDP

六月ゝ 毕业季﹏ 提交于 2020-03-11 01:08:51
7.传输层协议:TCP/UDP 前言 传输层定义了主机应用程序之间端到端的连通性。传输层中最为常见的两个协议分别是传输 控制 协议TCP和用户数据包协议UDP; TCP/UDP工作原理、报文格式、应用场景 面向连接: 建立连接前先发数据包 面向无连接: 不用建立连接,就是打电话和发短信的区别; TCP 面向连接的传输层协议,可提供可靠的传输服务 转存失败 重新上传 取消 TCP端口号 端口号区分不同的网络服务 端口分类 0-1023 固定端口 0-65535 动态端口 23 telnet 22 ssl 20/21 FTP 80 HTTP 超文本传输协议 52 DNS 3389 远程桌面 转存失败 重新上传 取消 转存失败 重新上传 取消 TCP头部 源端口号、目的端口号 序列号、确认序列号(TCP特点:可靠) 头部长度(20-60字节)、保留、六个标志(指针是否有效、确认序列号、为1立刻读取走、要求重新建立连接、请求建立连接、控制对端关闭)、窗口--控制流量大小; SYN:初始化请求 ACK:确认 FIN:结束请求 window:窗口,防止拥塞 校验和、可选字段(通常没用) 转存失败 重新上传 取消 转存失败 重新上传 取消 TCP建立连接的过程 三次握手四次断开,序列号+1回复 转存失败 重新上传 取消 TCP建立连接的过程 转存失败 重新上传 取消 TCP流量的控制 滑动窗口

计算机网络笔记05----分组交换与互联网协议

*爱你&永不变心* 提交于 2020-03-10 02:58:57
在因特网中,每个端系统具有一个称为IP地址的地址。当源主机要向目的端系统发 送一个分组时,源在该分组的首部包含了目的地的IP地址。如同邮政地址那样,该地址具有一种等级结构。当一个分组到达网络中的路由器时,路由器检查该分组的目的地址的一部分,并向一台相邻路由器转发该分组。更特别的是,每台路由器具有一个转发表( forwarding table),用于将目的地址(或目的地址的一部分)映射成为输出链路。当某分组到达一台路由器时,路由器检查该地址,并用这个目的地址搜索其转发表,以发现适当的出链路。路由器则将分组导向该出链路。 电路交换的频分复用(FDM)和时分复用(TDM) : 分组交换与电路交换的对比: 参考 三次握手和四次分手 : 参考 (下面笔记源自 维基百科 ,理解意思即可,不用抠字眼) 丢包 : 当通过计算机网络的一个或多个数据包未能到达目的地时,就会发生数据包丢失。数据包丢失要么是由于数据传输中的错误(通常是通过无线网络)引起的,要么是由于网络拥塞引起的。 传输控制协议(TCP)检测数据包丢失并执行重新传输以确保可靠的消息传递。TCP连接中的数据包丢失也用于避免拥塞。 因特网协议(IP)是根据端到端的原则设计的一种尽力而为的传送服务(Best Effort Service),其目的是保持逻辑路由器必须尽可能简单地实现。每个路由器在等待验证下一个节点是否正确接收数据包时

软件测试工程师笔试总结

对着背影说爱祢 提交于 2020-03-08 11:42:50
软件质量的六个特征 功能性 :软件所实现的功能满足用户需求的程度。功能性反映了所开发的软件满足用户描述的需求的程度, 即用户要求的功能是否全部实现。 可靠性 :在规定的时间和条件下,软件所能维持其性能水平的程度。可靠性对某些软件是重要的质量要求,它 除了反映软件满足用户需求正常运行的程度,且反映了在故障发生时能继续运行的程度 。 易使用性 :对于一个软件,用户学习、操作、准备输入和理解输出时,所做努力的程度。易使用性反映了对用户的友善性,即 用户在使用本软件时是否方便 。 效率 :在指定的条件下,用软件实现某种功能所需的计算机资源(包括时间)的有效程度。 效率反映了在完成功能要求时,有没有浪费资源 ,此外“资源”;这个术语有比较广泛的含义,它包括了内存、外存的使用,通道能力及处理时间。 可维修性 :在一个可运行软件中,为了满足用户需求、环境改变或软件错误发生时,进行相应修改所做的努力程度。 可维修性反映了在用户需求改变或软件环境发生变更时,对软件系统进行相应修改的容易程度 。一个易于维护的软件系统也是一个易于理解、易测试和易修改的软件,以便纠正或增加新的功能,或允许在不同软件环境上进行操作。 可移植性 :从一个计算机系统或环境转移到另一个计算机系统或环境的容易程度。 测试用例的边界 边界值分析法 :对输入或输出的边界值进行测试的一种黑盒测试方法

计算机网络面试

人走茶凉 提交于 2020-03-03 19:07:00
1.TCP/IP协议 TCP/IP协议 是一个协议集合,TCP/IP协议集包括①应用层②传输层③网际层④网络接口层。 1.1 网络接口层 网络接口层与OSI参考模型中的物理层和数据链路层相对应,它负责监视数据在 主机和网络之间的交换 。事实上,TCP/IP本身并 未定义该层的协议 ,而由参与互连的各网络使用自己的物理层和数据链路层协议。 1.2 网际层 网际层负责点到点(point-to-point)的传输(这里的"点"指主机或路由器) 该层协议 Internet协议(IP) Internet控制信息协议(ICMP) 地址解析协议(ARP) 反向地址解析协议(RARP) 1.3 传输层 传输层负责端到端(end-to-end)的传输(这里的"端"指 源主机和目的主机的 端口) 该层协议 TCP(Transmission Control Protocol,传输控制协议) UDP(User Datagram Protocol,用户数据报协议) 1.4 应用层 应用层服务于应用进程的,就是向用户提供数据加上编码和对话对的控制。 该层协议 2.TCP和UDP 2.1简要介绍TCP和UDP TCP(Transmission Control Protocol,传输控制协议)     (图片来源于 https://blog.csdn.net/zhang6223284/article

网络七层结构

我的未来我决定 提交于 2020-03-02 15:47:48
OSI参考模型 物理层:物理层的主要任务是透明地传输比特流。物理层不关心比特流的实际意义和结构,只是负责接收和传送比特流。物理层定义网络硬件的特性,包括使用什么样的传输介质以及与传输介质连接的接头等物理特性便于理解:(主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等。)物理层的数据传输单元是比特。 数据链路层:主要将从物理层接收的数据进行MAC地址(网卡的地址)的封装与解封装,在两个相邻节点间的线路上无差错地传送,以帧(Frame)为单位的数据,并要产生和识别帧边界 。数据链路层还提供了差错控制与流量量控制的方法,保证在物理线路上传送的数据无差错。 网络层:(主要将从下层接收到的数据进行IP地址(例192.168.0.1)的封装与解封装)进行路由选择,以确保数据分组(Packet)从发送端到达接收端,并在数据分组发生阻塞时进行拥塞控制。网络层还要解决异构网络的互连问题,以实现数据分组在不同类型的网络中传输。网络层协议的代表有:IP、IPX、RIP、OSPF等。 传输层:(主要是将从下层接收的数据进行分段和传输,到达目的地址后再进行重组。常常把这一层数据叫做段)为上一层进行通信的两个进程之间提供一个可靠的端到端服务,使传输层以上的各层不再关心信息传输的问题。传输层从会话层接收数据,形成报文(Message),在必要时将其分成若干个分组