码迷,mamicode.com
首页 > 其他好文 > 详细

网络知识详解

时间:2019-05-16 12:48:59      阅读:141      评论:0      收藏:0      [点我收藏+]

标签:任务   实施   jpeg   不同   分支   tftp   默认路由   在服务器   end   

什么是计算机网络
硬件上:通过线缆将网络设备和计算机连接起来
软件上:操作系统、应用软件、应用程序通过通信线路互连
实现资源共享和信息传递


计算机网络的功能
数据通信
资源共享
增加可靠性
提高系统处理能力


OSI协议模型
七层框架功能:
应用层:网络服务与最终用户的一个接口
表示层:数据的表示、安全、压缩
会话层:建立、管理、中止会话
传输层:定义传输数据的协议端口号、以及流控和差错校验
网络层:进行逻辑地质寻址,实现不同网络之间的路径选择
数据链路层:建立逻辑连接、进行硬件地址寻址、差错校验等功能
物理层:建立、维护、断开物理连接


TCP/IP协议的组成
应用层 HTTP FTP TFTP SMTP SNMP DNS 计算机
传输程 TCP UDP 防火墙
网络层 IP ICMP IGMP ARP RARP 路由器
数据链路层 交换机
物理层 由底层网络定义的协议 网卡

###################################################################

数据链路层

以太网MAC地址
用来识别一个以太网上的某个单独的设备或一组设备

交换机:是用来连接局域网的主要设备
能够根据以太网帧中的目标地址智能的转发数据,因此交换机工作在数据链路层

工作原理:
MAC地址学习、广播未知数据帧、接收方回应、交换机实现单播通信


VLAN

VLAN(虚拟局域网)是物理设备上连接的不受物理位置限制的用户的一个逻辑组

为什么引入VLAN
交换机的所有接口默认属于同一个广播域
随着接入设备的增多,网络中广播增多,降低了网络的效率
为了分割广播域,引入VLAN

VLAN的作用
广播控制、增加安全性、提高带宽利用、降低延迟


trunk

在路由/交换领域,VLAN的中继端口叫做trunk。trunk技术用在交换机之间互连,使不同VLAN通过共享链路与其它交换机中的相同VLAN通信。交换机之间互连的端口就称为trunk端口。trunk是基于OSI第二层数据链路层(DataLinkLayer)的技术。两台交换机上分别创建了多个VLAN(VLAN是基于Layer 2的),在两台交换机上相同的VLAN(比如VLAN10)要通信,需要将交换机A上属于VLAN10的一个端口与交换机B上属于VLAN10的一个端口互连;如果这两台交换机其它相同VLAN间需要通信,那么交换机之间需要更多的互连线,端口利用率就太低了。 交换机通过trunk功能,事情就简单了,只需要两台交换机之间有一条互连线,将互连线的两个端口设置为trunk模式,这样就可以使交换机上不同VLAN共享这条线路。
trunk不能实现不同VLAN间通信,需要通过三层设备(路由/三层交换机)来实现。


以太网通道

以太网通道(EthernetChannel)通过捆绑多条以太网链路来提高链路带宽,并运行一种机制,将多个以太网端口捆绑成一条逻辑链路。以太网通道最多可以捆绑8条物理链路,其中物理链路可以是双绞线,也可以是光纤连接的。

###############################################################################

网络层

功能:
定义了基于IP协议的逻辑地址
连接不同的媒介类型
选择数据通过网络的最佳路径

ICMP协议

通过IP数据报传送,用来发送错误和控制信息
定义了很多信息类型,如:
目的地不可达、TTL超时、信息请求、信息应答、地址请求、地址应答


路由器

路由:
将数据包从一个网络发送到另一个网络
需要依靠路由器来完成
路由器只关心网络的状态,决定最佳路径

怎么工作:
识别数据包的目标IP地址
识别数据包的源IP地址(主要用于策略路由)
在路由器表中发现可能的路径
选择路由表中到达目标最好的路径
维护和检查路由信息

根据路由表选择最佳路径
每个路由都维护着一张路由表,这是路由器转发数据包的关键
每条路由表记录指明了:到达某个子网或主机应从路由器的哪个物理接口发送,通过接口
可到达该路径的下一个路由的地址(或直接相连网络中的目标主机地址)

如何获得路由表

静态、默认路由
由管理员在路由器上手工指定
适合分支机构、家居办公室等小型网络

动态路由
根据网络拓扑流量变化,由路由通过路由器协议自动设置
适合ISP服务商、广域网、园区网等大型网络

静态路由主要特点:
由管理员手工配置,为单向条目
通信双方的边缘路由器都需要指定,否则会导致数据包有去无回

默认路由:
是一种特殊的静态路由
默认路由的目标网络为 0.0.0.0 0.0.0.0 可匹配任何目标地址
只有当从路由表找不到任何明确匹配的路由条目时,才会使用默认路由,一般在企业网关出口使用

三层交换技术
使用三层交换技术实现VLAN间通信
三层交换=二层交换+三层转发

动态路由
基于某种路由协议实现

特点:减少了管理任务、占用了网络带宽

动态路由协议OSPF
OSPF区域
为了适应大型的网络,OSPF在网络内部划分多个区域
每个OSPF路由器只维护所在区域的完整链路状态信息

区域ID
表示一个十进制的数字
也可以表示一个IP

骨干区域Area 0
负责区域见路由信息传播

#####################################################################

传输层

作用:
网络层提供点到点的连接
传输层提供端到端的连接

协议:
TCP协议:传输控制协议、可靠的、面向连接的协议、传输效率低
UDP协议:用户数据报协议、不可靠的、无连接的服务、传输效率高

TCP三次握手:
1.发送SYN,请求建立连接
2.发送SYN、ACK
3.发送ACK

TCP四次断开:
1.发送FIN,请求断开连接
2.发送ACK
3.发送FIN,请求断开连接
4.发送ACK

访问控制列表作用:
读取第三层、第四层 头部信息
根据预先定义好的规则对数据进行过滤

工作原理:
访问控制列表在接口应用的方向
出:已经过路由器的处理,正离开路由器接口的数据包
入:已到达路由器接口的数据包,将被路由器处理

类型:
标准访问控制列表
基于源IP地址过滤数据包
标准访问控制列表的访问控制列表号是1~99
扩展访问控制列表
基于源IP地址、目的IP地址、指定协议、端口来过滤数据包
扩展访问控制列表的访问控制列表号是100~199

NAT 网络地址转换
作用:通过将内部网络的私有IP地址翻译成全球唯一的公网IP地址,使内部网络可以连接到互联网等外部网路上

私有IP地址分类:
A类: 10.0.0.0~10.255.255.255
B类: 172.16.0.0~172.31.255.255
C类: 192.168.0.0~192.168.255.255


NAT

NAT的优点
节省公有合法IP地址
处理地址重叠
安全性

缺点
延迟增大
配置和维护的复杂性

实现方式:
静态转换
端口多路复用

静态NAT
静态转换
IP地址的对应关系是一对一,而且是不变的,借助静态转换,能实现外部网络对内部网络中某些特设定服务器的访问

端口多路复用PAT
PAT作用
通过改变外出数据包的源IP地址和源端口并进行端口转换,内部网络的所有主机均可共享一个合法IP地址实现互联网的访问,节约IP

##################################################################

STP生成树算法

广播风暴的产生
交换机工作原理:
根据MAC地址转发数据帧,如果地址未知,则广播
如果交换机接收到广播帧也会向所有接口发送

广播风暴的产生
当网络中存在物理环路,会产生广播风暴

STP(生成树协议)
逻辑上断开环路,防止广播风暴的产生
当线路故障,阻塞接口被激活,恢复通信,起备份线路的作用

选择根网桥
网桥ID(BID)
网桥ID是唯一的,交换机之间选择BID值最小的交换机作为网络中的根网桥
网桥优先级 网桥的MAC地址
2字节 6字节
取值范围:0~65535
缺省值:32768

PVST+配置的意义
配置网络中比较稳定的交换机为根网桥
利用PVST+实现网络的负载分担

HSRP
热备份路由协议
CISCO私有协议

################################################################

STP:解决环路带来的广播风暴并对线路冗余,同时产生负载均衡效果
以太网通道:提高网络链路带宽
OSPF路由协议:实现网络路径的自动学习
HSPR:实现冗余网关

###############################################################

SESSION机制、cookie机制

  • cookie通过客户端确定记录信息确定用户身份,session通过服务器端记录信息确定用户身份。
  • 虽然Session保存在服务器,对客户端是透明的,它的正常运行仍然需要客户端浏览器的支持。这是因为Session需要使用Cookie作为识别标志。HTTP协议是无状态的,Session不能依据HTTP连接来判断是否为同一客户,因此服务器向客户端浏览器发送一个名为JSESSIONID的Cookie,它的值为该Session的id(也就是HttpSession.getId()的返回值)。Session依据该Cookie来识别是否为同一用户。

http与https区别:
1、http协议是明文传输的,https是SSL加密的传输协议,https要安全
2、https需要数字证书,一般需要花钱购买。
3、http使用80端口、https使用443端口

TCP应用的:HTTP、HTTPS(浏览器)、SMTP(邮件传输)、FTP(putty)
用的Telnet、SSH;QQ文件传输
UDP应用:RIP(路由选择协议)、DNS(域名解析协议)、SNMP(简单网络管理协议)
要求网络通讯速度能尽量的快。如:QQ语音 QQ视频等

传输层协议与网络层协议的区别?
1、网络层协议负责的是提供主机间的逻辑通信
2、传输层协议负责的是提供进程间的逻辑通信

物理层:RJ45、CLOCK、IEEE802.3 (中继器,集线器,网关)

数据链路:PPP、FR、HDLC、VLAN、MAC (网桥,交换机)

网络层:IP、ICMP、ARP、RARP、OSPF、IPX、RIP、IGRP、 (路由器)

传输层:TCP、UDP、SPX

会话层:NFS、SQL、NETBIOS、RPC

表示层:JPEG、MPEG、ASCII

应用层:FTP、DNS、Telnet、SMTP、HTTP、WWW、NFS

什么是子网掩码?
子网掩码是标志两个IP地址是否同属于一个子网的,也是32位二进制地址,其每一个为1代表该位是网络位,为0代表主机位。它和IP地址一样也是使用点式十进制来表示的。如果两个IP地址在子网掩码的按位与的计算下所得结果相同,即表明它们共属于同一子网中。


http常见状态码有哪些?
状态码告知从服务器端返回的请求结果。

1XX Informational(信息性状态码) 接受的请求正在处理
2XX Success(成功状态码) 请求正常处理完毕
3XX Redirection(重定向状态码) 需要进行附加操作以完成请求
4XX Client Error(客户端错误状态码) 服务器无法处理请求
5XX Server Error(服务器错误状态码) 服务器处理请求出错

2开头状态码

2xx (成功)表示成功处理了请求的状态代码

200 (成功) 服务器已成功处理了请求。 通常。
3开头状态码

3xx (重定向) 表示要完成请求,需要进一步操作。 通常,这些状态代码用来重定向。

304 (未修改) 自从上次请求后,请求的网页未修改过。 服务器返回此响应时,不会返回网页内容。

4开头状态码

4xx(请求错误) 这些状态代码表示请求可能出错,妨碍了服务器的处理

400 (错误请求) 服务器不理解请求的语法。

403 (禁止) 服务器拒绝请求。

404 (未找到) 服务器找不到请求的网页。

5开头状态码

5xx(服务器错误)这些状态代码表示服务器在尝试处理请求时发生内部错误。 这些错误可能是服务器本身的错误,而不是请求出错

500 (服务器内部错误) 服务器遇到错误,无法完成请求。

501 (尚未实施) 服务器不具备完成请求的功能。 例如,服务器无法识别请求方法时可能会返回此代码。

502 (错误网关) 服务器作为网关或代理,从上游服务器收到无效响应。

503 (服务不可用) 服务器目前无法使用(由于超载或停机维护)。 通常,这只是暂时状态。

504 (网关超时) 服务器作为网关或代理,但是没有及时从上游服务器收到请求。

505 (HTTP 版本不受支持) 服务器不支持请求中所用的 HTTP 协议版本。

重点:200,304,403,404,500


DNS域名系统,简单描述其工作原理。 ?

当DNS客户机需要在程序中使用名称时,它会查询DNS服务器来解析该名称。客户机发送的每条查询信息包括三条信息:包括:指定的DNS域名,指定的查询类型,DNS域名的指定类别。基于UDP服务,端口53.?该应用一般不直接为用户使用,而是为其他应用服务,如HTTP,SMTP等在其中需要完成主机名到IP地址的转换

在TCP/IP协议中,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连接是全双工的,因此每个方向都必须单独进行关闭。这个原则是当一方完成它的数据发送任务后就能发送一个FIN来终止这个方向的连接。收到一个 FIN只意味着这一方向上没有数据流动,一个TCP连接在收到一个FIN后仍能发送数据。首先进行关闭的一方将执行主动关闭,而另一方执行被动关闭。
(1)客户端A发送一个FIN,用来关闭客户A到服务器B的数据传送(报文段4)。

(2)服务器B收到这个FIN,它发回一个ACK,确认序号为收到的序号加1(报文段5)。和SYN一样,一个FIN将占用一个序号。
(3)服务器B关闭与客户端A的连接,发送一个FIN给客户端A(报文段6)。
(4)客户端A发回ACK报文确认,并将确认序号设置为收到序号加1(报文段7)。

1.为什么建立连接协议是三次握手,而关闭连接却是四次握手呢?
这是因为服务端的LISTEN状态下的SOCKET当收到SYN报文的建连请求后,它可以把ACK和SYN(ACK起应答作用,而SYN起同步作用)放在一个报文里来发送。但关闭连接时,当收到对方的FIN报文通知时,它仅仅表示对方没有数据发送给你了;但未必你所有的数据都全部发送给对方了,所以你不可以马上关闭SOCKET,也即你可能还需要发送一些数据给对方之后,再发送FIN报文给对方来表示你同意现在可以关闭连接了,所以它这里的ACK报文和FIN报文多数情况下都是分开发送的。

网络知识详解

标签:任务   实施   jpeg   不同   分支   tftp   默认路由   在服务器   end   

原文地址:https://blog.51cto.com/14050800/2395504

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!