本文是在课程课件基础上修改的学习笔记
课程原地址:https://www.bilibili.com/video/BV1j4411D7B2
如有侵删
数据在两台计算机之间是如何传输的?
数据传输过程:
这里所说的开放系统,实质上指的是遵循OSI参考模型和相关协议能够实现互连的具有各种应用目的的计算机系统。
OSI采用了分层的结构化技术,共分七层:
? 物理层、数据链路层、网络层、传输层、会话层、表示层、应用层
应用层为用户提供的服务和协议:文件传输服务(FTP)、远程登录服务(ssh)、网络管理服等。上述的各种网络服务由该层的不同应用协议和程序完成。
应用层的主要功能如下:
用户接口:应用层是用户与网络,以及应用程序与网络间的直接接口,使得用户能够与网络进行交互式联系。
实现各种服务:该层具有的各种应用程序可以完成和实现用户请求的各种服务。
表示层是对来自应用层的命令和数据进行解释,对各种语法赋予相应的含义,并按照一定的格式传送给会话层。
其主要功能是处理用户信息的表示问题,如编码、数据格式转换和加密解密等。
表示层的具体功能如下:
数据格式处理:协商和建立数据交换的格式,解决各应用程序之间在数据格式表示上的差异。
数据的编码:处理字符集和数字的转换。
压缩和解压缩:为了减少数据的传输量,这一层还负责数据的压缩与解压缩。
数据的加密和解密:可以提高网络的安全性。
会话层是用户应用程序和网络之间的接口,主要任务是:组织和协调两个会话进程之间的通信,并对数据交换进行管理。
当建立会话时,用户必须提供他们想要连接的远程地址。
OSI上3层:应用层、表示层、会话层的主要任务是数据处理------资源子网
OSI下3层:网络层、数据链路层、物理层的主要任务是数据通讯------通讯子网
传输层是OSI模型的第4层,它是通信子网和资源子网的接口和桥梁,起到承上启下的作用
传输层的主要任务是:向用户提供可靠的端到端的差错和流量控制,保证报文的正确传输
**包:**是TCP/IP协议通信传输中的数据单位,一般也称"数据包"。
**数据单元:**是网络信息传输的基本单位。一般网络连接不允许传送任意大小的数据包,而是采用分组技术将一个数据分成若干个很小的数据包,并给每个小数据包加上一些关于此数据包的属性信息
**报文:**报文(message)是网络中交换与传输的数据单元
**报文段:**组成报文的每个分组。我们将运输层分组称为报文段(segment)
在计算机网络中由于各种干扰的存在,物理链路是不可靠的。因此,这一层的主要功能是:
在物理层提供的比特流的基础上,通过差错控制、流量控制方法,使有差错的物理线路变为无差错的数据链路,即向网络层提供可靠的通过物理介质传输数据的方法。
具体工作是:接收来自物理层的位流(比特流)形式的数据,通过差错控制等方法传到网络层;同样,也将来自上层的数据帧,拆装为位流形式的数据转发到物理层;并且,还负责处理接收端发回的确认帧的信息,以便提供可靠的数据传输。
**帧:**帧(frame)帧是数据链路层的传输单元。它将上层传入的数据添加一个头部和尾部,组成了帧。
主要功能是:利用传输介质为数据链路层提供物理连接,实现比特流的透明传输。尽可能屏蔽掉具体传输介质和物理设备的差异。
在7层模型中,每一层都提供一个特殊的网络功能。
从网络功能的角度观察:
物理层、数据链路层、网络层:主要提供数据传输和交换功能,即节点到节点之间通信为主;
传输层(第4层):作为上下两部分的桥梁,是整个网络体系结构中最关键的部分;
会话层、表示层和应用层:以提供用户与应用程序之间的信息和数据处理功能为主;
TCP/IP协议模型(TransmissionControlProtocol/InternetProtocol),包含了一系列构成互联网基础的网络协议,是Internet的核心协议,通过20多年的发展已日渐成熟,并被广泛应用于局域网和广域网中,目前已成为一种国际标准。
TCP/IP协议簇是一组不同层次上的多个协议的组合,该协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的协议来完成自己的需求,与OSI的七层模型相对应。
尽管通常称该协议族为TCP/IP,但TCP和IP只是其中的两种协议而已(该协议族的另一个名字是Internet协议族(InternetProtocolSuite))
也称作互联网层或网际层,处理分组在网络中的活动,例如分组的选路。
在TCP/IP协议族中,网络层协议包括IP协议(网际协议),ICMP协议(Internet互联网控制报文协议),以及IGMP协议(Internet组管理协议)。
主要为两台主机上的应用程序提供端到端的通信。在TCP/IP协议族中,有两个互不相同的传输协议:
TCP(传输控制协议)和UDP(用户数据报协议)TCP协议:为两台主机提供高可靠性的数据通信。TCP是面向连接的通信协议,通过三次握手建立连接,通讯完成时要断开连接,由于TCP是面向连接的所以只能用于端到端的通讯。TCP提供的是一种可靠的数据流服务,采用"**带重传的肯定确认"**技术来实现传输的可靠性。也就是TCP数据包中包括序号(seq)和确认(ack),所以未按照顺序收到的包可以被排序,而损坏的包可以被重传。**UDP协议:**则为应用层提供一种非常简单的服务。它是面向无连接的通讯协议,UDP数据包括目的端口号和源端口号信息,由于通讯不需要连接,所以可以实现广播发送。UDP通讯时不需要接收方确认,不保证该数据报能到达另一端,属于不可靠的传输,可能会出现丢包现象。UDP与TCP位于同一层,但它不管数据包的顺序、错误或重发。
***OSI***会话层、表示层、应用层
HTTP、FTP、SSH、DHCP、DNS…
当数据以TCP/IP协议传输时的封装与街封装过程如下图:
了解相关名词
了解netstat中的网络状态
TCP/IP三次握手
VMnet0:用于虚拟桥接网络下的虚拟交换机
VMnet1:用于虚拟Host-Only网络下的虚拟交换机
VMnet8:用于虚拟NAT网络下的虚拟交换机
VMwareNetworkAdepterVMnet1:Host用于与Host-Only虚拟网络进行通信的虚拟网卡VMwareNetworkAdepterVMnet8:Host用于与NAT虚拟网络进行通信的虚拟网卡
桥接网络是指虚拟网卡通过VMnet0虚拟交换机和本地物理网卡进行桥接,那么物理网卡和虚拟网卡就相当于处于同一个网段,虚拟交换机就相当于一台现实网络中的交换机。所以要想虚拟机也可以连接到互联网中,那么两个网卡的IP地址也要设置为同一网段。
在NAT网络中,会用到VMwareNetworkAdepterVMnet8虚拟网卡,主机上的VMwareNetworkAdepterVMnet8虚拟网卡被直接连接到VMnet8虚拟交换机上与虚拟网卡进行通信。VMwareNetworkAdepterVMnet8虚拟网卡的作用仅限于和VMnet8网段进行通信,它不给VMnet8网段提供路由功能,所以虚拟机虚拟一个NAT服务器,使虚拟网卡可以连接到Internet。VMwareNetworkAdepterVMnet8虚拟网卡的IP地址是在安装VMware时由系统指定生成的,我们尽量不要修改这个数值,否则可能会使主机和虚拟机无法通信。
在Host-Only模式下,虚拟网络是一个全封闭的网络,它唯一能够访问的就是物理真机。其实Host-Only网络和NAT网络很相似,不同的地方就是Host-Only网络没有NAT服务,所以虚拟网络不能连接到Internet。主机和虚拟机之间的通信是通过VMwareNetworkAdepterVMnet1虚拟网卡来实现的。
总结:
网络配置:静态IP
主机名配置:完全规范主机名serverserver.heima.ccIP地址和主机名一一绑定写到host文件中
关闭防火墙和selinux
本文主要给大家介绍了关于Asp.NET页面事件加载先后顺序的相关内容,分享出来供大...
想了解更多内容,请访问: 51CTO和华为官方战略合作共建的鸿蒙技术社区 https://...
本文实例讲述了PHP设计模式之策略模式(Strategy)入门与应用。分享给大家供大家...
搬家步骤具体如下: 1、打包数据库文件保存到本地。 2、打包网站根目录所有程序...
本文实例讲述了jsp中select的onchange事件用法。分享给大家供大家参考,具体如下...
平铺式窗口的特性吸引了很多人的追捧。也许是因为它很好看,也许是因为它能提高 ...
在宝塔面板里装完phpmyadmin但是进不去数据库的这种情况太常见了, 很多人都买了...
如下所示: package com.wzh.test.xpath; import java.io.File; import org.dom4...
为了保护个人隐私,一般人都会给自己的电脑设置登录密码,以防止他人随便使用,...
原作者:?不愿署名的沈大佬(博主好友) 1. 目录结构 mysql_sync/ - docker-compose...