【面试】网络基础
来源:互联网 发布:熊猫采集软件下载 编辑:程序博客网 时间:2024/04/29 21:35
OSI七层模型
应用层:提供网络应用协议
表示层:为用户提供数据转换和表示服务
会话层:为用户提供会话控制服务(安全认证)
传输层:为用户提供端到端的数据传输服务
网络层:控制通信子网原点到目的点的数据传输(Packet)
数据链路层:在有差错的物理线路上提供无差错的数据传输(Frame)
物理层:在物理线路上传输原始的二进制数据位
TCP/IP 五层模型
应用层:同OSI
传输层:提供端到端的数据传输服务TCP和UDP
网络层:控制通信子网原点到目的点的IP包传送
数据链路层:同OSI
物理层:同OSI
面向无连接与面向连接的区别
面向连接,是指通信双方在进行通信之前,要事先在双方之间建立起一个完整的可以彼此沟通的通道。这个通道也就是连接,在通信过程中,整个连接的情况一直可以被实时地监控和管理。
无连接的通信,就不需要预先建立起一个联络两个通信节点的连接来,需要通信的时候,发送节点就可以往“网络”上送出信息,让信息自主地在网络上去传,一般在传输的过程中不再加以监控,让该信息的传递在网上尽力而为地往目的地节点传送。
TCP(TransmissionControl Protocol,传输控制协议)是面向连接的。
UDP UDP(UserDatagram Protocol,用户数据包协议)是面向无连接的。
在网络中,有些服务,如HTTP、FTP等,对数据的可靠性要求较高,在使用这些服务时,必须保证数据包能够完整无误的送达;而另外一些服务,如DNS、即时聊天工具等,并不需要这么高的可靠性,高效率和实时性才是它们所关心的。根据这两种服务不同的需求,也就诞生了面向连接的TCP协议,以及面向无连接的UDP协议。
集线器与交换机
集线器是将信号收集放大后传输给所有其它端口,即传输线路是共享的。概括起来可以这么说: 集线器采用广播的形式传输数据,所有端口争用一个共享信道的带宽,因此随着网络节点数量的增加,数据传输量的增大,每节点的可用带宽将随之减少。集线器这种共享设备,本身不能识别目的地址,当同一网内的a主机向b主机发送数据时,数据包在以hub为架构的网络上以广播方式传输,由每一台终端通过验证数据包头的地址信息来确定是否接收,同一时刻网络上只能传输一组数据帧的通讯。此方式共享带宽。
交换机比集线器价格高速度快,基于mac地址识别,能完成封装转发数据功能的设备。它可以学习mac地址,放在内部地址表中,通过在数据帧的始发者和接收者之间建立临时的交换路径,使数据从源地址到达目的地址。所有端口均有独享的信道带宽,以保证每个端口上数据的快速有效传输。交换机为用户提供的是独占的、点对点的连接,数据包只被发送到目的端口,而不会向所有端口发送。
路由器与交换机的区别
(1)工作层次不同
交换机是工作数据链路层,也就是第二层,路由器工作在网络层。
(2)数据转发所依据的对象不同
交换机是利用物理地址或者说MAC地址来确定转发数据的目的地址。而路由器则是利用不同网络的ID号(即IP地址)来确定数据转发的地址。IP地址是在软件中实现的,描述的是设备所在的网络,有时这些第三层的地址也称为协议地址或者网络地址。MAC地址通常是硬件自带的,由网卡生产商来分配的,而且已经固化到了网卡中去,一般来说是不可更改的。而IP地址则通常由网络管理员或系统自动分配。
(3)传统的交换机只能分割冲突域,不能分割广播域;而路由器可以分割广播域
由交换机连接的网段仍属于同一个广播域,广播数据包会在交换机连接的所有网段上传播,在某些情况下会导致通信拥挤和安全漏洞。连接到路由器上的网段会被分配成不同的广播域,广播数据不会穿过路由器。虽然第三层以上交换机具有VLAN功能,也可以分割广播域,但是各子广播域之间是不能通信交流的,它们之间的交流仍然需要路由器。
(4)路由器提供了防火墙的服务
路由器仅仅转发特定地址的数据包,不传送不支持路由协议的数据包传送和未知目标网络数据包的传送,从而可以防止广播风暴。
各设备工作在OSI模型的哪一层?
网卡工作在物理层
中继器工作在物理层,用来复原网络中的信号并重新发送到其他网段上
集线器工作在物理层,用于连接各物理设备
网桥工作在数据链路层的介质访问控制(MAC)子层上,用于在多个使用同一种通信协议的网段中传送数据包的设备
交换机也是在数据链路层,作用类似网桥
路由器工作在网络层
网关则有所不同,有些网关使用完整的七层协议,不过一般网关负责执行应用层的协议转换
什么是ARP?
在TCP/IP协议中,A给B发送IP包,在报头中需要填写B的IP为目标地址,但这个IP包在以太网上传输的时候,还需要进行一次以太包的封装,在这个以太包中,目标地址就是B的MAC地址.
计算机A是如何得知B的MAC地址的呢?解决问题的关键就在于ARP协议。
在A不知道B的MAC地址的情况下,A就广播一个ARP请求包,请求包中填有B的IP(192.168.1.2),以太网中的所有计算机都会接收这个请求,而正常的情况下只有B会给出ARP应答包,包中就填充上了B的MAC地址,并回复给A。
A得到ARP应答后,将B的MAC地址放入本机缓存,便于下次使用。
本机MAC缓存是有生存期的,生存期结束后,将再次重复上面的过程。
什么是DNS?
DNS服务器,中文名称:域名解析服务器,是计算机网络中一种专门的服务器,它的功能是将计算机网络的域名(如:www.sina.com)映射到相应的 ip 地址(如:61.172.201.229)。
什么是VPN?
虚拟专用网络 (VPN)是跨专用网络或公用网络(例如 Internet)的点对点连接。VPN客户端使用基于 TCP/IP的特殊协议(称为隧道协议)对 VPN服务器上的虚拟端口进行虚拟呼叫。在典型的 VPN部署中,客户端通过 Internet启动与远程访问服务器的虚拟点对点连接。远程访问服务器应答呼叫,对呼叫方进行身份验证,并在 VPN客户端与组织的专用网络之间传输数据。
为了模拟点对点链路,使用标头来封装数据。标头提供路由信息,使数据可以通过共享网络或公用网络到达其终结点。为了模拟专用链路,对所发送的数据进行加密,以保证机密性。如果没有加密密钥,将难以辨识在共享网络或公用网络上截获的数据包。封装并加密专用数据的链路称为 VPN连接。
- 【面试】网络基础
- 面试涉及的网络基础
- [ios基础]ios面试--网络协议篇
- 网络基础——相关面试考点
- 【终极面试】网络基础,数据库向
- 【模拟面试】网络基础,数据库向
- #面试java基础总结大全#网络编程
- 面试复习——Android工程师之网络基础
- 面试基础
- 基础面试
- 面试基础
- 面试基础
- 基础面试
- 网络基础
- 网络基础
- 网络基础
- 网络基础
- 网络基础
- 编程思想重于编程语言浅谈
- 毕业快一年了
- 数据库异常
- linux 如何查看文件系统的类型
- Baidu云盘【文件API】接口学习 『一』
- 【面试】网络基础
- web项目中使用过滤器防止中文乱码问题
- 虚拟内存的置换策略
- python语句和控制流
- 小飞的电梯调度算法
- zen-Coding在Notepad++中的安装及使用
- Lucene索引操作常用类
- timer 的使用 模拟显示时间,可以每隔一段时间定时执行调度
- junit单位测试的几种方法