须知一个完整的计算机系统是由硬件、操做系统、应用软件三者组成,具有了这三个条件,一台计算机系统就能够本身跟本身玩了(打个单机游戏,玩个扫雷啥的)html
若是你要跟别人一块儿玩,那你就须要上网了,什么是互联网?数据库
互联网的核心就是由一堆协议组成,协议就是标准,好比全世界人通讯的标准是英语编程
若是把计算机比做人,互联网协议就是计算机界的英语。全部的计算机都学会了互联网协议,那全部的计算机都就能够按照统一的标准去收发信息从而完成通讯了。浏览器
人们按照分工不一样把互联网协议从逻辑上划分了层级,缓存
下面是常见的几种模型:安全
能够看到基本都是由OSI七层模型进行提炼的。下面时网上找到的一个比较关于OSI模型说明比较全的图服务器
经常使用内容:网络
交换机就是用来进行报文交换的机器。多为链路层设备(二层交换机),可以进行地址学习,采用存储转发的形式来交换报文。app
路由器的一个做用是连通不一样的网络,另外一个做用是选择信息传送的线路。选择通畅快捷的近路,能大大提升通讯速度,减轻网络系统通讯负荷,节约网络系统资源,提升网络系统畅通率。 框架
OSI各层对应的设备—–集线器、交换机、路由器、中继器及网关、网桥之间的区别 :
1、集线器 集线器也称HUB,工做在OSI七层结构的第一层物理层,属于共享型设备,接收数据广播发出,在局域网内通常都是星型链接拓扑结构,每台工做站都链接到集线器上。因为集线器的带宽共享特性致使网络利用效率极低,通常在大中型的网络中不会使用到集线器。如今的集线器基本都是全双工模式,市面上常见的集线器传输速率广泛都为100Mbps。 2、交换机 交换机顾名思义以交换为主要功能,工做在OSI第二层(数据链路层),根据MAC地址进行数据转发。交换机的每个端口都属于一个冲突域,而集线器全部端口属于一个冲突域。交换机经过分析Ethernet包的包头信息(其中包含了源MAC地址、目标MAC地址、信息长度等),取得目标MAC地址后,查找交换机中存储的地址对照表(MAC地址对应的端口),确认具备此MAC地址的网卡链接在哪一个端口上,而后将信包送到对应端口,有效的抑制IP广播风暴。而且信息包处于并行状态,效率较高。 交换机的转发延迟很是小,主要的得益于其硬件设计机理很是高效,为了支持各端口的最大数据传输速率,交换机内部转发信包的背板带宽都必须远大于端口带宽,具备强大的总体吞吐率,才能为每台工做站提供更高的带宽和更高的网络利用率,能够知足大型网络环境大量数据并行处理 的要求。 3、路由器 路由器跟集线器和交换机不一样,是工做在OSI的第三层(网络层),根据IP进行寻址转发数据包。路由器是一种能够链接多个网络或网段的网络设备,能将不一样网络或网段之间(好比局域网——大网)的数据信息进行转换,并为信包传输分配最合适的路径,使它们之间可以进行数据传输,从而构成一个更大的网络。 路由器具备最主要的两个功能,即数据通道功能和控制功能。数据通道功能包括转发决定、背板转发以及输出链路调度等,通常由特定的硬件来完成;控制功能通常用软件来实现,包括与相邻路由器之间的信息交换、系统配置、系统管理等。 4、中继器 中继器(Repeater)工做于OSI的第一层(物理层),中继器是最简单的网络互联设备,链接同一个网络的两个或多个网段,主要完成物理层的功能,负责在两个网络节点的物理层上按位传递信息,完成信号的复制、调整和放大功能,以此从而增长信号传输的距离,延长网络的长度和覆盖区域,支持远距离的通讯。 通常来讲,中继器两端的网络部分是网段,而不是子网。中继器只将任何电缆段上的数据发送到另外一段电缆上,并无论数据中是否有错误数据或不适于网段的数据。你们最常接触的是网络中继器,在通信上还有微波中继器、激光中继器、红外中继器等等,机理相似,举一反三。 5、网关 网关(Gateway)又叫协议转换器,网关的概念实际上跟上面的设备型不是一类问题,可是为了方便参考仍是放到这里一并介绍。 网关是一种复杂的网络链接设备,能够支持不一样协议之间的转换,实现不一样协议网络之间的互连。网关具备对不兼容的高层协议进行转换的能力,为了实现异构设备之间的通讯,网关须要对不一样的链路层、专用会话层、表示层和应用层协议进行翻译和转换。因此网关兼有路由器、网桥、中继器的特性。 若要使两个彻底不一样的网络(异构网)链接在一块儿,通常使用网关,在Internet中两个网络也要经过一台称为网关的计算机实现互联。这台计算机能根据用户通讯目标计算机的IP地址,决定是否将用户发出的信息送出本地网络,同时,它还将外界发送给属于本地网络计算机的信息接收过来,它是一个网络与另外一个网络相联的通道。为了使TCP/IP协议可以寻址,该通道被赋予一个IP地址,这个IP地址称为网关地址。 因此,网关的做用就是将两个使用不一样协议的网络段链接在一块儿的设备,对两 个网络段中的使用不一样传输协议的数据进行互相的翻译转换。在互连设备中,因为协议转换的复杂性,通常只能进行一对一的转换,或是少数几种特定应用协议的转换。 6、网桥 网桥和交换机同样都是工做在OSI模型的第二层(数据链路层),能够当作是一个二层路由器(真正的路由器是工做在网络层,根据IP地址进行信包转发)。网桥可有效的将两个局域网(LAN)连起来,根据MAC地址(物理地址)来转发帧,使本地通讯限制在本网段内,并转发相应的信号至另外一网段,网桥一般用于联接数量很少的、同一类型的网段。
详细的设备工做原理内容会在每一层中进行说明
注:网络中的传输中是按比特计算的,好比:网络交换机带宽分为:10 Mb/s、100 Mb/s、1000 Mb/s、10000 Mb/s(1Gb/s)。Mb/s换算MB/s:1 Mb/s = 0.125 MB/s。
传输数据单元:比特(Bit)
典型的设备:网线,集线器,中继器,调制解调器
介绍:
利用传输介质为数据链路层提供物理链接,实现比特流的透明传输。物理层的做用是实现相邻计算机节点之间比特流的透明传送,尽量屏蔽掉具体传输介质和物理设备的差别。使其上面的数据链路层没必要考虑网络的具体传输介质是什么。“透明传送比特流”表示经实际电路传送后的比特流没有发生变化,对传送的比特流来讲,这个电路好像是看不见的。物理层关系的是信号,接口和传输介质。
网络接口控制器(英语:network interface controller,NIC),又称网络接口控制器,网络适配器(network adapter),网卡(network interface card),或局域网接收器(LAN adapter),是一块被设计用来容许计算机在计算机网络上进行通信的计算机硬件。因为其拥有MAC地址,所以属于OSI模型的第1层。它使得用户能够经过电缆或无线相互链接。每个网卡都有一个被称为MAC地址的独一无二的48位串行号,它被写在卡上的一块ROM中。在网络上的每个计算机都必须拥有一个独一无二的MAC地址。没有任何两块被生产出来的网卡拥有一样的地址。这是由于电气电子工程师协会(IEEE)负责为网络接口控制器销售商分配惟一的MAC地址。
ethernet规定接入internet的设备都必须具有网卡,发送端和接收端的地址即是指网卡的地址,即mac地址
mac地址:每块网卡出厂时都被烧制上一个世界惟一的mac地址,长度为48位2进制,一般由12位16进制数表示(前六位是厂商编号,后六位是流水线号)
中继器是位于第1层(OSI参考模型的物理层)的网络设备。当数据离开源在网络上传送时,它是转换为可以沿着网络介质传输的电脉冲或光脉冲的——这些脉冲称为信号(signal)。当信号离开发送工做站时,信号是规划的,并且很容易辨认出来。可是,当信号沿着网络介质进行传送时, 随着通过的线缆愈来愈长,信号就会变得愈来愈弱,愈来愈差。中继器的目的是在比特级别对网络信号进行再生【放大信号】和重定时,从而使得它们可以在网络上传输更长的距离。
集线器的目的是对网络信号进行再生和重定时。它的特性与中继器很类似(被称为多端口中继器multiport repeater)。HUB是网络中各个设备的通用链接点,它一般用于链接LAN的分段。HUB含有多个端口。每个分组到达某个端口时,都会被复制到其余全部端口,以便全部的LAN分段都能看见全部的分组。集线器并不认识信号、地址或数据中任何信息模式。
中继器与集线器的区别在于链接设备的线缆的数量。一个中继器一般只有两个端口,而一个集线器一般有4至20个或更多的端口。
集线器可以建立于总线方式相同的争用环境,当一台设备进行传输时,集线器上其余的设备都会监听它,而且争取下一次的传输权利。所以,链接在集线器上的设备将平分该集线器所拥有的带宽。而且在同一集线器上的设备属于同一个冲突域。
调制解调器是Modulator(调制器)与Demodulator(解调器)的简称,中文称为调制解调器(港台称之为数据机),根据Modem的谐音,亲昵地称之为“猫”。它是在发送端经过调制将数字信号转换为模拟信号,而在接收端经过解调再将模拟信号转换为数字信号的一种装置。
所谓调制,就是把数字信号转换成电话线上传输的模拟信号;解调,即把模拟信号转换成数字信号。合称调制解调器。调制解调器是一种计算机硬件,它能把计算机的数字信号翻译成可沿普通电话线传送的模拟信号,而这些模拟信号又可被线路另外一端的另外一个调制解调器接收,并译成计算机可懂的语言。这一简单过程完成了两台计算机间的通讯。
物理层的做用就是组网,把一个个电脑用光缆、电缆、双绞线、无线电波等方式链接起来。它主要规定了网络的一些电气特性,做用是负责传送0和1的电信号。
大牛博客推荐:https://blog.csdn.net/jeffleo/article/details/53929338
传输数据单元:帧 (Frame)
典型的设备:网桥,交换机
介绍:
数据链路层是OSI参考模型中的第二层,介乎于物理层和网络层之间。数据链路层在物理层提供的服务的基础上向网络层提供服务,其最基本的服务是将源自网络层来的数据可靠地传输到相邻节点的目标机网络层。为达到这一目的,数据链路必须具有一系列相应的功能,主要有:如何将数据组合成数据块,在数据链路层中称这种数据块为帧(frame),帧是数据链路层的传送单位;如何控制帧在物理信道上的传输,包括如何处理传输差错,如何调节发送速率以使与接收方相匹配;以及在两个网络实体之间提供数据链路通路的创建、维持和释放的管理。
物理链路(物理线路):是由传输介质与设备组成的。原始的物理传输线路是指没有采用高层差错控制的基本的物理传输介质与设备。
数据链路(逻辑线路):在一条物理线路之上,经过一些规程或协议来控制这些数据的传输,以保证被传输数据的正确性。实现这些规程或协议的硬件和软件加到物理线路,这样就构成了数据链路。从数据发送点到数据接收点(点到点 point to point)所通过的传输途径。
当采用复用技术时,一条物理链路上能够有多条数据链路。
网桥(Bridge)也称为桥接器,是链接两个局域网的存储转发设备,在功能上与集线器等其余用于链接网段的设备相似,不事后者工做在物理层(OSI模型第1层)。
网桥可以识别数据链路层中的数据帧,并将这些数据帧临时存储于内存,再从新生成信号做为一个全新的数据帧转发给相连的另外一个网段(network segment)。因为可以对数据帧拆包、暂存、从新打包(称为存储转发机制 store-and-forward),网桥可以链接不一样技术参数传输速率的数据链路,如链接10BASE-T与100BASE-TX。
数据帧中有一个位叫作FCS,用来经过CRC方式校验数据帧中的位。网桥能够检查FCS,将那些损坏的数据帧丢弃。
网桥在向其余网段转发数据帧时会作冲突检测控制。
网桥还能经过地址自学机制和过滤功能控制网络流量,具备OSI第2层网络交换机功能。这称为transparent bridge,由DEC在1980年代发明。[1]其机制是网桥内部有一个数据库,最初没有数据。当网桥从一个网段收到一个数据帧,就会在数据库中登记(或者更新)数据帧的源地址属于这个网段,并检查数据包的目的地址。若是目的地址在数据库中属于另一个网段,则网桥向该网段转发该数据帧;若是目的地址在数据库中没有记录,则网桥向除了源地址所在以外的其余全部网段转发(flood)该数据帧。
桥接器仅仅在不一样网络之间有数据传输的时候才将数据转发到其余网络,不是像集线器那样对全部数据都进行广播。对于以太网,“桥接”这一术语正式的含义是指匹配IEEE 802.1D标准的设备,即“网络切换”。桥接器能够分区网段,不似集线器还是在为同一碰撞域,因此对带宽耗损较大。因桥接器透过其内之MAC表格,让发送帧不会经过,因此其称之为数据连接层操做之网络组件,可隔离碰撞。
如有通讯频繁的机器,则应置于同区以内,不然性能将下降。
咱们一般说的交换机是二层交换机,目前还有三层交换机,四层交换机和七层交换机具体见维基百科说明。
二层交换机工做于OSI参考模型的第二层,即数据链路层。交换机内部的CPU会在每一个端口成功链接时,经过将MAC地址和端口对应,造成一张MAC表。在从此的通信中,发往该MAC地址的数据包将仅送往其对应的端口,而不是全部的端口。所以交换机可用于划分数据链路层广播,即冲突域;但它不能划分网络层广播,即广播域。
具体可分为:
一般,交换机采起直通转发,若是误码率上升到某个阈值,再改用存储转发。
当一台交换机安装配置好以后,其工做过程以下:
对于全交换(full-switch)局域网,交换机每一个端口只链接一台设备,所以不会发生碰撞。交换机也不须要作过滤
交换机的分类
交换机与其余设备的区别
交换机与集线器不一样之处是,集线器会将网络内某一用户发送的数据包传至全部已链接到集线器的电脑。而交换机则只会将数据包发送到指定目的地的电脑(透过MAC表),相对上能减小数据碰撞及数据被窃听的机会。交换机更能将同时传到的数据包分别处理,而集线器则不能。
最大的不一样之处在于:集线器的每个接口都处于相同的冲突域,而交换机的每一个接口处于一个冲突域。在性能方面尤其突出:例如在100Mb/s的以太网络中有100个用户,使用集线器,每一个用户只有1Mb/s(100Mb/s/100),由于Hub是共享式的网络;而使用交换机,每一个接口有100Mb/s,若是有100个接口,总带宽为100*100Mb/s(最终的带宽大小取决于输入接口的带宽;即若是输入端口只有10000M,则达到上限前,每一个用户都能使用100M带宽,但一旦全部用户的总需求超过10000M,用户将在相同优先级的原则下进行带宽分配),由于交换机是独立式的网络。
从时间线上看,路由器诞生于交换机以后,为了弥补交换机不能定向转发数据包的缺陷。
“交换”一词最先出现于电话系统,指两个不一样电话交换机之间语音信号的交换。故从本意上讲,交换是完成信号由交换设备入口至出口的转发的技术的统称。路由器名称中的“路由”(router)来自于路由器的转发策略--路由选择(routing)。交换机和路由器的区别有但不局限于如下几点(这里的交换机和路由器都是常规型号的):
1.二者工做在OSI模型的不一样层次上
交换机工做在OSI模型第二层数据链路层,路由器工做在OSI模型第三层网络层。网络层提供更多的协议信息,方便路由器作出更加智能的转发选择。
2.二者转发时所依据的对象不一样
交换机是基于MAC地址识别,实现封装数据包转发。路由器基于网络ID号(IP地址)。MAC通常被固化在网卡中,不可更改。而IP地址能够被系统或网络管理员进行设置和分配。
3.二者转发广播数据包的域不一样
被交换机链接起来的网络属于同一广播域,广播数据包会在网络内全部网段上进行传播。链接在路由器上的网段则被分区为不一样广播域,广播数据包只在各自广播域内传播而没法穿透路由器。路由器的这种子网隔离功能能够在必定程度上防止广播风暴。
虽然三层交换机与路由器都具备路由转发功能,两者都运行在OSI模型的第三层,即网络层,可是两者并不等同,适用范围也不一样,不会相互替代。
1.主打功能不一样
三层交换机的主打的功能点是二层交换技术,并附加一点路由转发功能。路由器的主打功能是路由转发,并可能附加一些备用功能,好比硬件防火墙、二层交换技术等其它功能。
2.适用环境不一样
三层交换机的路由转发功能通常都比较粗略,因为它通常用在简单的接入网的链接。它在以太网中的主要做用仍是提供快速的二层数据交换,功能特色仍是针对频繁的以太网数据交换。
路由器的设计初衷就是为了跨网段链接。尽管它也能在局域网内用于链接网络,可是它的路由转发功能主要用于不一样类型网络之间,例如链接局域网与广域网,链接以太网和令牌环网。它的主打功能就是路由转发,专业处理复杂路由路径和复杂的网络链接。所以,路由器的路由转发功能,比三层交换机强大得多。路由器的优点是可以选择最佳路由、负荷分担、链路备份以及与其余网络进行路由信息的交换等功能。为了可以适应各类类型的网络,路由器的接口类型很是丰富,例如以太网接口、令牌环网接口、WLAN网卡、光纤接口等等。三层交换机通常只有以太网接口。
3.性能不一样
三层交换机的路由转发是由硬件实现的,使用专用ASIC芯片来处理路由转发。路由器的路由转发是由软件实现的,在CPU中运行一段程序来处理路由转发。
因此三层交换机的转发效率会高过路由器,可是路由转发的功能都比较弱,因为路由转发功能是固化在硬件中的,不具备软件可扩展性,也就不会具备路由器的附加功能(例如防火墙功能)。
在物理层中咱们实现了电脑直接的互联,而传递的是“0”和“1”这样的数据,这样的数据是没有任何意义的,因此须要有对应的解读方法。
在这里须要拓展一下以太网协议。
早期的时候各个公司都有本身的分组方式,后来造成了统一的标准,即以太网协议ethernet
ethernet规定
head | data |
head包含:(固定18个字节)
data包含:(最短46字节,最长1500字节)
head长度+data长度=最短64字节,最长1518字节,超过最大限制就分片发送
其实到了如今这个时候电脑直接已经能够实现通讯了。在物理层中咱们有网卡,而网卡是惟一的(块网卡怎么会知道另外一块网卡的MAC地址,回答是有一种ARP协议,能够解决这个问题。这个留到后面介绍,这里只须要知道,以太网数据包必须知道接收方的MAC地址,而后才能发送),和咱们的手机号同样。而数据传输的格式也有了。ethernet采用最原始的方式,广播的方式进行通讯,即计算机通讯基本靠吼
虽然可以通讯,可是有个问题,咱们如今知道了低层的数据传输基本靠吼,也就是要广播到同网内的全部人。几十人,几百人能够,像目前全球这样的用户使用量来讲就有麻烦了,会产生广播风暴。
【转】OSI第二层数据链路层介绍1
【转】OSI第二层数据链路层介绍2
传输数据单元:数据包(Packet )
典型的设备:路由器,防火墙、三层交换机
介绍:
网络层是OSI模型中的第三层(TCP/IP模型中的网际层)。网络层提供路由和寻址的功能,使两终端系统可以互连且决定最佳路径,并具备必定的拥塞控制和流量控制的能力。因为TCP/IP协议体系中的网络层功能由IP协议规定和实现,故又称IP层。
它主要有两个功能,一个是寻址,一个是路由。
寻址:对网络层而言使用IP地址来惟一标识互联网上的设备,网络层依靠IP地址进行相互通讯(相似于数据链路层的MAC地址)
路由:在同一个网络中的内部通讯并不须要网络层设备,仅仅靠数据链路层就能够完成相互通讯,对于不一样的网络之间相互通讯则必须借助路由器等三层设备。
路由器(英语:Router,又称路径器)是一种电讯网络设备,提供路由与转送两种重要机制,能够决定数据包历来源端到目的端所通过的路由路径(host到host之间的传输路径),这个过程称为路由;将路由器输入端的数据包移送至适当的路由器输出端(在路由器内部进行),这称为转送。路由工做在OSI模型的第三层——即网络层,例如网际协议(IP)。
路由器就是链接两个以上个别网络的设备。
因为位于两个或更多个网络的交汇处,从而可在它们之间传递分组(一种数据的组织形式)。路由器与交换机在概念上有必定重叠但也有不一样:交换机泛指工做于任何网络层次的数据中继设备(尽管多指网桥),而路由器则更专一于网络层。
路由器与交换机的差异,路由器是属于OSI第三层的产品,交换机是OSI第二层的产品。第二层的产品功能在于,将网络上各个电脑的MAC地址记在MAC地址表中,当局域网中的电脑要通过交换机去交换传递数据时,就查询交换机上的MAC地址表中的信息,将数据包发送给指定的电脑,而不会像第一层的产品(如集线器)每台在网络中的电脑都发送。而路由器除了有交换机的功能外,更拥有路由表做为发送数据包时的依据,在有多种选择的路径中选择最佳的路径。此外,并能够链接两个以上不一样网段的网络,而交换机只能链接两个。并具备IP分享的功能,如:区分哪些数据包是要发送至WAN。路由表存储了(向前往)某一网络的最佳路径,该路径的“路由度量值”以及下一个(跳路由器)。参考条目路由得到这个过程的详细描述。
尽管也有其它一些不多用到的被路由协议,但路由一般指的就是IP路由。
在数据链路层的时候说过了若是全部的使用互联网的用户在同一个网段中,会产生广播风暴,因此要将用户进行划分,让他们在不一样的网段中,本身在本身的小网段中吼。而互联网就是这无数的子网络构成的一个巨型网络。
在网络层中引入了一套新的地址,让咱们可以区分不一样的网段。这套地址就叫作“网络地址”,简称“网址”。
因而,”网络层”出现之后,每台计算机有了两种地址,一种是MAC地址,另外一种是网络地址。两种地址之间没有任何联系,MAC地址是绑定在网卡上的,网络地址则是管理员分配的,它们只是随机组合在一块儿。
网络地址帮助咱们肯定计算机所在的子网络,MAC地址则将数据包送到该子网络中的目标网卡。所以,从逻辑上能够推断,一定是先处理网络地址,而后再处理MAC地址。
在这一层中有一个规定网络地址的协议,叫作IP协议,它所定义的地址,就被称为IP地址。目前,普遍采用的是IP协议第四版,简称IPv4。这个版本规定,网络地址由32个二进制位组成。由于IPv4的地址已经不够用了,因此如今推广IPv6,听说能给撒哈拉的每一粒沙子都有一个本身的ip地址。虽然听起来很厉害,可是因为IPv4普及时间好久,因此IPv6进行普及还有很长的一段路要走。
ip地址的相关内容,想了解的能够到下面的第一个连接中查看,这里就不重复说明了。
而在数据链路层挖的ARP的坑下面给填一下。
arp协议由来:计算机通讯基本靠吼,即广播的方式,全部上层的包到最后都要封装上以太网头,而后经过以太网协议发送,在谈及以太网协议时候,我门了解到
通讯是基于mac的广播方式实现,计算机在发包时,获取自身的mac是容易的,如何获取目标主机的mac,就须要经过arp协议
arp协议功能:广播的方式发送数据包,获取目标主机的mac地址
协议工做方式:每台主机ip都是已知的
例如:主机172.16.10.10/24访问172.16.10.11/24
一:首先经过ip地址和子网掩码区分出本身所处的子网
场景 | 数据包地址 |
同一子网 | 目标主机mac,目标主机ip |
不一样子网 | 网关mac,目标主机ip |
二:分析172.16.10.10/24与172.16.10.11/24处于同一网络(若是不是同一网络,那么下表中目标ip为172.16.10.1,经过arp获取的是网关的mac)
源mac | 目标mac | 源ip | 目标ip | 数据部分 | |
发送端主机 | 发送端mac | FF:FF:FF:FF:FF:FF | 172.16.10.10/24 | 172.16.10.11/24 | 数据 |
三:这个包会以广播的方式在发送端所处的自网内传输,全部主机接收后拆开包,发现目标ip为本身的,就响应,返回本身的mac
【转】OSI第三层网络层介绍1
【转】OSI第三层网络层介绍-ip介绍
【转】OSI第三层网络层介绍-路由协议
传输数据单元:数据段 (Segment)
典型的设备:进程和端口
介绍:
传输层的做用是什么?传输层实现端到端的链接,端到端是什么概念呢?打个比方说,一我的用QQ与朋友聊天,网络层识别IP地址,可以将信息送到正确的主机,而主机应该使用什么应用协议接收这个信息呢? 这个功能就须要传输层来完成,传输层实现进程到进程的链接。
传输层服务经过传输层协议的编程接口传递给应用进程。该服务能够包括如下功能:
网络层的ip帮咱们区分子网,以太网层的mac帮咱们找到主机,而后你们使用的都是应用程序,你的电脑上可能同时开启qq,暴风影音,等多个应用程序,
那么咱们经过ip和mac找到了一台特定的主机,如何标识这台主机上的应用程序,答案就是端口,端口即应用程序与网卡关联的编号。传输层的做用就是帮咱们创建端到端的通讯。
补充:端口范围0-65535,0-1023为系统占用端口
可靠传输,TCP数据包没有长度限制,理论上能够无限长,可是为了保证网络的效率,一般TCP数据包的长度不会超过IP数据包的长度,以确保单个TCP数据包没必要再分割。
以太网头 | ip 头 | tcp头 | 数据 |
tcp报文
tcp三次握手和四次挥手
不可靠传输,”报头”部分一共只有8个字节,总长度不超过65,535字节,正好放进一个IP数据包。
以太网头 | ip头 | udp头 | 数据 |
会话层,位于OSI模型的第5层,主要为两个会话层实体进行会话(Session),而进行的对话链接的管理服务。
会话层为客户端的应用程序提供了打开、关闭和管理会话的机制,亦即半永久的对话。会话的实体包含了对其余程序做会话连接的要求及回应其余程序提出的会话连接要求。在应用程序的运行环境中,会话层是这些程序用来提出远程过程调用(remote procedure calls,RPC)的地方。
会话层标准为了使会话链接建立阶段能进行功能协商,也为了便于其它国际标准参考和引用,定义了12种功能单元。各个系统可根据自身状况和须要,以核心功能服务单元为基础,选配其余功能单元组成合理的会话服务子集。
会话层服务
会话层在OSI的模型负责会话检查点和恢复。它容许不一样来源的信息流做适当的合并或同步化。
一个例子是在网络会议的应用,其中音频和视频的流串必须同步,以免嘴唇与声音不一样步的问题。楼层控制确保在屏幕上显示的是当前的发言者。
另外一个应用是在电视直播节目中,在那里音频和视频的流串从一个到另外一个合并或转换时要无缝,以避免出现无声通话时间或过分重叠。
会话层的主要功能
会话层(Session Layer)是OSI模型的第5层,是用户应用程序和网络之间的接口,主要任务是:向两个实体的表示层提供创建和使用链接的方法。将不一样实体之间的表示层 的链接称为会话。所以会话层的任务就是组织和协调两个会话进程之间的通讯,并对数据交换进行管理。 用户能够按照半双工、单工和全双工的方式创建会话。当创建会话时,用户必须提供他们想要链接的远程地址。而这些地址与MAC(介质访问控制子层)地址或网络层的逻辑地址不一样,它们是为用户专门设计的,更便于用户记忆。
表示层(Presentation)为不一样终端的上层用户提供数据和信息正确的语法表示变换方法。如文本文件的ASCII格式和EBCDIC,用于表示数字的1S或2S补码表示形式。
表示层的主要功能
应用层
应用层(Application Layer)是OSI参考模型的最高层,它是计算机用户,以及各类应用程序和网络之间的接口,其功能是直接向用户提供服务,完成用户但愿在网络上完成的各类工做。它在其余6层工做的基础上,负责完成网络中应用程序与网络操做系统之间的联系,创建与结束使用者之间的联系,并完成网络用户提出的各类网络服务及 应用所需的监督、管理和服务等各类协议。此外,该层还负责协调各个应用程序间的工做。
想实现网络通讯,每台主机需具有四要素
获取这四要素分两种方式
1.静态获取
即手动配置
2.动态获取
经过dhcp获取
以太网头 | ip头 | udp头 | dhcp数据包 |
(1)最前面的”以太网标头”,设置发出方(本机)的MAC地址和接收方(DHCP服务器)的MAC地址。前者就是本机网卡的MAC地址,后者这时不知道,就填入一个广播地址:FF-FF-FF-FF-FF-FF。
(2)后面的”IP标头”,设置发出方的IP地址和接收方的IP地址。这时,对于这二者,本机都不知道。因而,发出方的IP地址就设为0.0.0.0,接收方的IP地址设为255.255.255.255。
(3)最后的”UDP标头”,设置发出方的端口和接收方的端口。这一部分是DHCP协议规定好的,发出方是68端口,接收方是67端口。
这个数据包构造完成后,就能够发出了。以太网是广播发送,同一个子网络的每台计算机都收到了这个包。由于接收方的MAC地址是FF-FF-FF-FF-FF-FF,看不出是发给谁的,因此每台收到这个包的计算机,还必须分析这个包的IP地址,才能肯定是否是发给本身的。当看到发出方IP地址是0.0.0.0,接收方是255.255.255.255,因而DHCP服务器知道”这个包是发给个人”,而其余计算机就能够丢弃这个包。
接下来,DHCP服务器读出这个包的数据内容,分配好IP地址,发送回去一个”DHCP响应”数据包。这个响应包的结构也是相似的,以太网标头的MAC地址是双方的网卡地址,IP标头的IP地址是DHCP服务器的IP地址(发出方)和255.255.255.255(接收方),UDP标头的端口是67(发出方)和68(接收方),分配给请求端的IP地址和本网络的具体参数则包含在Data部分。
新加入的计算机收到这个响应包,因而就知道了本身的IP地址、子网掩码、网关地址、DNS服务器等等参数
1.本机获取
2.打开浏览器,想要访问Google,在地址栏输入了网址:www.google.com。
3.dns协议(基于udp协议)
知识补充:
A.root-servers.net198.41.0.4美国 B.root-servers.net192.228.79.201美国(另支持IPv6) C.root-servers.net192.33.4.12法国 D.root-servers.net128.8.10.90美国 E.root-servers.net192.203.230.10美国 F.root-servers.net192.5.5.241美国(另支持IPv6) G.root-servers.net192.112.36.4美国 H.root-servers.net128.63.2.53美国(另支持IPv6) I.root-servers.net192.36.148.17瑞典 J.root-servers.net192.58.128.30美国 K.root-servers.net193.0.14.129英国(另支持IPv6) L.root-servers.net198.32.64.12美国 M.root-servers.net202.12.27.33日本(另支持IPv6)
域名定义:http://jingyan.baidu.com/article/1974b289a649daf4b1f774cb.html 顶级域名:以.com,.net,.org,.cn等等属于国际顶级域名,根据目前的国际互联网域名体系,国际顶级域名分为两类:类别顶级域名(gTLD)和地理顶级域名(ccTLD)两种。类别顶级域名是 以"COM"、"NET"、"ORG"、"BIZ"、"INFO"等结尾的域名,均由国外公司负责管理。地理顶级域名是以国家或地区代码为结尾的域名,如"CN"表明中国,"UK"表明英国。地理顶级域名通常由各个国家或地区负责管理。 二级域名:二级域名是以顶级域名为基础的地理域名,比喻中国的二级域有,.com.cn,.net.cn,.org.cn,.gd.cn等.子域名是其父域名的子域名,比喻父域名是abc.com,子域名就是www.abc.com或者*.abc.com. 通常来讲,二级域名是域名的一条记录,好比alidiedie.com是一个域名,www.alidiedie.com是其中比较经常使用的记录,通常默认是用这个,可是相似*.alidiedie.com的域名所有称做是alidiedie.com的二级
4.HTTP部分的内容,相似于下面这样:
GET / HTTP/1.1
Host: www.google.com
Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1) ……
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding: gzip,deflate,sdch
Accept-Language: zh-CN,zh;q=0.8
Accept-Charset: GBK,utf-8;q=0.7,*;q=0.3
Cookie: … …
咱们假定这个部分的长度为4960字节,它会被嵌在TCP数据包之中。
5.TCP协议
TCP数据包须要设置端口,接收方(Google)的HTTP端口默认是80,发送方(本机)的端口是一个随机生成的1024-65535之间的整数,假定为51775。
TCP数据包的标头长度为20字节,加上嵌入HTTP的数据包,总长度变为4980字节。
6 .IP协议
而后,TCP数据包再嵌入IP数据包。IP数据包须要设置双方的IP地址,这是已知的,发送方是192.168.1.100(本机),接收方是172.194.72.105(Google)。
IP数据包的标头长度为20字节,加上嵌入的TCP数据包,总长度变为5000字节。
7 .以太网协议
最后,IP数据包嵌入以太网数据包。以太网数据包须要设置双方的MAC地址,发送方为本机的网卡MAC地址,接收方为网关192.168.1.1的MAC地址(经过ARP协议获得)。
以太网数据包的数据部分,最大长度为1500字节,而如今的IP数据包长度为5000字节。所以,IP数据包必须分割成四个包。由于每一个包都有本身的IP标头(20字节),因此四个包的IP数据包的长度分别为1500、1500、1500、560。
8. 服务器端响应
通过多个网关的转发,Google的服务器172.194.72.105,收到了这四个以太网数据包。
根据IP标头的序号,Google将四个包拼起来,取出完整的TCP数据包,而后读出里面的”HTTP请求”,接着作出”HTTP响应”,再用TCP协议发回来。
本机收到HTTP响应之后,就能够将网页显示出来,完成一次网络通讯。