非网络专业开发人员专有网络名词解释大全

2018-06-24 07:15

  作为一名程序员, 不可能不与网络打交道. 现在我们的手机, 电脑, 不夸张地说, 离开了网络就是一块废铁, 它们的作用将大打折扣.. 本文的作用呢,主要是针对不网络专业开发的人员准备的, 以最短的时间, 了解计网最多的知识为前提起笔.

  因特网是当今世界上最大的网络, 是”网络的网络”. 即因特网是所有网络互连起来的一个巨型网络.

  核心部分 : 大量网络和连接这些网络的由器(此由器不是我们家用的由器)

  以太网是现在最常用的局域网通信协议, 以太网上传输的是MAC帧. 由于以太网同一时间只允许一台计算机发送数据, 所以必须有一套检测机制, 那就是CSMA/CD协议 :

  系统互连基本参考模型, 只要遵守这个OSI标准, 任何两个系统都能进行通信. OSI是七层协议体系结构, 而TCP/IP是一个四层协议体系结构, 于是我们采取折中的方法, 学习计算机网络原理的时候往往用的是五层协议的体系结构 : 物理层, 数据链层, 网络层, 传输层和应用层

  计算机的世界里只有0和1, 正如你现在所看这篇文章的文字, 存储在计算机中也是一大串0和1的组合. 但是这些数字不能在真实的物理介质中传输的, 而需要把它转换为光信号或者电信号, 所以这一层负责将这些比特流(0101)与光电信号进行转换.

  如果没有物理层, 那么也就不存在互联网, 不存在数据的共享, 因为数据无法在网络中流动.

  数据在这一层不再是以比特流的形式传输, 而是分割成一个一个的帧再进行传输.

  又称计算机的硬件地址, 被固化在适配器(网卡)ROM上的占48位的地址. MAC地址可以用来唯一区别一台计算机, 因为它在全球是独一无二的

  由于数据在这次曾要被分割成一个一个的帧, 由于不同的链了不同的最大帧长, 即MTU(最大传输单元), 凡是超出这个MTU的帧都必须被分块. 例如一台货车一次能运输5吨的货物, 而有条公限载重2吨, 那么你只好分3次运输.

  网桥工作在数据链层, 根据MAC帧的目的地址对收到的帧进行转发和过滤.

  实际上就是一个多接口的网桥, 以太网交换机的每个接口都直接与一个单个主机或另一个集线器相连, 可以很容易实现VLAN(虚拟局域网)

  如果只有数据链层没有网络层, 数据就只能在同一条链上传输, 不能跨链传输. 有了网络层, 数据便能跨域不同的数据链传输.

  IP地址又称为软件地址, 存储在计算机的存储器上, IPv4地址为32位, IPv6地址为128位

  IP分组中首部的源地址和目的地址在传输中不会改变, MAC帧中首部的源地址和目的地址每到一个由器会改变一次

  一般由一串1和一串0组成, 不管网络有没有划网, 将子网掩码和IP地址做按位与运算即可得出网络地址.

  所有的网络都必须使用子网掩码, 同时在由表中必须有子网掩码这一栏. 如果一个网络不划网, 那么该网络的子网掩码就是默认的子网掩码.

  例如, 128.14.35.7/20, 意思是前20位为网络前缀, 后12位为主机号. 另外, CIDR把网络前缀相同的连续的IP地址组成一个”CIDR地址块”

  首部前20字节为固定长度, 是所有IP数据报必备的. 后4字节是可选字段, 其长度可变.

  首部长度 : 记录了首部的长度, 最大为1111, 即15个32位字长, 即60字节. 当首部长度不是4字节的整数倍时, 需要使用最后的填充字段加以填充.

  总长度 : 指首部和数据之和的长度. 最大为216-1 = 65535字节. 但是由于数据链层每一帧的数据长度都有最大长度MTU, 以太网MTU为1500字节, 所以超出范围的数据报就必须进行分片处理

  标识 : 每产生一个IP数据报, 计数器就+1, 并将此值赋值给标识字段. 再以后需要分片的数据报中, 标识相同说明是同一个数据报

  段位移 : 又称片位移, 相对于用户数据字段的起点, 该片从何处开始. 片位移以8个字节为偏移单位. 所以, 每个分片的长度一定是8字节的整数倍.

  首部检验和 : 只检验数据报的首部, 不检验数据部分. 不为0则丢弃报文.

  每个由器内部都一个由表, 由表包含以下内容(目的网络地址,下一跳地址).

  使用子网时分组转发时, 由表必须包含以下三项内容:目的网络地址,子网掩码和下一跳地址.

  默认由 : 不知道分组该发给哪个由器时就发给默认由. 当一个网络只有很少的对外连接时使用默认由非常合适.

  若N就是与此由器直接相连的某个网络地址, 则直接交付(不需要再交给其他由器转发, 直接找到该目的主机交付), 否则 - (3)

  若由表中有目的地址为D的特定主机由, 则把数据报传给该由器, 否则 - (4)

  若由表中有到达网络N的由, 则把数据报传给该由器, 否则 - (5)

  因特网中的所有由器对该目的地址是专用地址的数据报一律不转发, 下面有3种专用地址(虚拟IP地址)

  假设现在公司A有一个部门在广州和另一个在上海, 而他们在当地都有自己的专用网. 那么怎么将这两个专用网连接起来呢?

  多个专用网内部的主机公用一个NAT由器的IP地址, 在主机发送和接收IP数据报时必须先通过NAT由器进行网络地址转换.

  不仅如此, NAT还能使用端口号, 摇身一变成为网络地址和端口转换NAPT

  每一个主机都有一个ARP高速缓存, 里面有本局域网上的各主机和由器的IP地址到MAC地址的映射表. 以下是ARP的工作原理 :

  这一层是重中之重, 因为数据链层, 网络层这两层的数据传输都是不可靠的, 尽最大能力交付的. 什么意思的? 就是它们不负责提交给你的就是正确的数据. 然而这一层的TCP协议将要提供可靠传输

  面向报文 : 应用层交下来的报文直接加上UDP头部就往IP层扔, 不合并也不拆分

  检验和 : 与IP数据报只检验首部不同的是, UDP需要把首部和数据部分一起检验

  确认号 : 期望收到对方下一个报文段的第一个数据字节的序号若确认号 = N, 则表明 : 到序号N-1为止的所有数据都已正常收到

  紧急URG : 若URG = 1时, 说明紧急指针字段有效, 告诉系统这是紧急数据, 应尽快传送. 例如突然要中断传送

  确认ACK : ACK = 1时确认号才有效, ACK = 0时确认号无效. TCP, 连接建立后所有传送的报文段都必须把ACK置1

  推送PSH : 若PSH = 1, 则接收方收到报文段之后不再等到整个缓存满而是直接向付

  复位RST : 当RST = 1, 说明TCP连接有严重错误, 必须连接再重连

  同步SYN : 在连接建立时用来同步序号. 当SYN = 1, ACK = 0时表明这是一个连接请求报文段, 对方若同意建立连接, 则在响应的报文段中置SYN = 1, ACK = 1

  终止FIN : 当FIN = 1, 表明此报文段的发送方数据已发送完毕, 并要求连接

  窗口 : 告诉对方 : 从本报文段首部中的确认号算起, 接收方目前允许对方发送的数据量. 这是作为接收方让发送方设置其发送窗口的依据

  紧急指针 : 当URG = 1时有效, 指出紧急数据的末尾在报文段的

  由于停止等待协议非常低效, 于是衍生出窗口这一概念. 上图为发送方维持的发送窗口, 位于发送窗口的5个分组都可以连续发送出去而不需要等待对方的确认. 每收到一个确认, 就把发送窗口前移一个分组的. 这大大提高了信道利用率!

  接收方不必发送每个分组的确认报文, 而是采用累积确认的方式. 也就是说, 对按序到达的最后一个分组发送确认报文.

  如果发送方等待一段时间后, 还是到 ACK 确认报文, 就会启动超时重传. 这个等待的时间为重传超时时间(RTO, Retransmission TimeOut).

  然而, RTO 的值不是固定的, 这个时间总是略大于连接往返时间(RTT,Round Trip Time). 假设报文发送过去需要5秒, 对方收到后发送确认报文回来也需要5秒, 那么RTT就为10秒, 那这RTO就要比10秒要略大一些. 那么超过RTO之后还没有收到确认报文就认为报文丢失了, 就要重传.

  慢开始: cwnd = 1, 然后每经过一个传输轮次就翻倍拥塞避免: 让cwnd缓慢增大, 每经过一个传输轮次就+1慢开始门限ssthresh:

  只要判断网络出现拥塞, 把ssthresh设为当前发送拥塞窗口的一半(不能小于2), 并把cwnd设为1, 重新执行慢开始算法.

  快重传: 接收方及时发送确认, 而发送方只要一连收到三个重复确认, 马上重传快恢复: 当发送方一连收到三个重复确认时, ssthresh减半, cwnd设为ssthresh.

  A : 试想一下, A第一次发送请求连接, 但是在网络某节点滞留了, A超时重传, 然后这一次一切正常, A跟B就愉快地进行数据传输了. 等到连接了以后, 那个迷失了的连接请求突然到了B那, 如果是两次握手的话, B发送确认, 它们就算是建立起了连接了. 事实上A并不会理会这个确认, 因为我压根没有要传数据啊. 但是B却傻傻地以为有数据要来, 苦苦等待. 结果就是造成资源的浪费.

  第一次握手 : 你好, 我是A, 你能听到我说话吗第二次握手 : 听到了, 我是B, 你能听到我说话吗第三次握手 : 听到了, 我们可以开始聊天了三次握手其实就是为了检测双方的发送和接收能力是否正常, 你说呢?

  A :首先, 由于TCP的全双工通信, 双方都能作为数据发送方. A想要关闭连接, 必须要等数据都发送完毕, 才发送FIN给B. (此时A处于半关闭状态)然后, B发送确认ACK, 并且B此时如果要发送数据, 就发送(例如做一些前的处理)再者, B发送完数据之后, 发送FIN给A. (此时B处于半关闭状态)然后, A发送ACK, 进入TIME-WAIT状态最后, 经过2MSL时间后没有收到B传来的报文, 则确定B收到了ACK了. (此时A, B才算是处于完全关闭状态)

  A : 在Client发送出最后的ACK回复,但该ACK可能丢失。Server如果没有收到ACK,将不断重复发送FIN片段。所以Client不能立即关闭,它必须确认Server接收到了该ACK。Client会在发送出ACK之后进入到TIME_WAIT状态。Client会设置一个计时器,等待2MSL的时间。如果在该时间内再次收到FIN,那么Client会重发ACK并再次等待2MSL。MSL指一个片段在网络中最大的存活时间,2MSL就是一个发送和一个回复所需的最大时间。如果直到2MSL,Client都没有再次收到FIN,那么Client推断ACK已经被成功接收,则结束TCP连接。

  第一次挥手 : A告诉B, 我没数据发了, 准备关闭连接了, 你要发送数据吗第二次挥手 : B发送最后的数据第三次挥手 : B告诉A, 我也要关闭连接了第四次挥手 : A告诉B你可以关闭了, 我这边也关闭了

  递归查询 : B问A广州怎么去, A不知道, A就问C, C不知道就问D...直到知道了再一层一层转告直到A告诉B. 迭代查询 : B问A广州怎么去, A不知道, A就告诉你可以去问C, 然后B就去问C, C不知道, C就告诉你可以去问D, 然后B就去问D...直到B知道为止

  PS : 该查询使用UDP, 并且为了提高DNS查询效率, 每个域名服务器都使用高速缓存.

  HTTP是面向事务的, 即它传输的数据是一个整体, 要么全部收到, 要么全部收不到.

  HTTP/1.0 缺点 : 无连接, 每一次请求都要重新建立TCP连接, 所以每一次HTTP请求都要花费2倍RTT时间(一次TCP请求, 一次HTTP请求)

  HTTP/1.1持续工作的两种工作方式 : 非流水线方式和流水线方式 非流水线方式 : 收到一个请求的响应再发下一个请求, 效率低, 浪费资源 流水线方式 : 能够同时发送多个请求, 效率高

  GET 请求通常用于查询、获取数据,而 POST 请求则用于发送数据GET 请求的参数在URL中, 因此绝不能用GET请求传输数据, 而POST 请求的参数在请求头中, 安全性略高于GET请求

  ps : POST请求的数据也是以的形式存放在请求头中, 因此也不安全

  万维网使用Cookie来用户, 表示HTTP服务器和用户之间传递的状态信息.

  1. 用户浏览某网站, 该网站的服务器为用户产生一个唯一的识别码, 并以此为索引在服务器后端数据库中产生一个项目2. 返回给用户的HTTP响应报文中添加一条 Set-cookie, 值为该识别码, 如1233. 用户的浏览器将该cookie保存起来, 在用于继续浏览该网站时发送的每一个HTTP请求都会有一行 Cookie: 123于是, 这个网站就知道Cookie为123的这个用户做了什么, 为这个用户一个的列表(如购物车)

  当然, Cookie是把双刃剑, 方便的同时也带有性, 例如隐私泄露等, 用户可以自行决定是否使用Cookie

  总而言之, Cookie和Session就是同一样东西存放地方不同而已.

  HTTPS协议在HTTP协议的基础上, 在HTTP和TCP中间加入了一层SSL/TLS加密层, 解决了HTTP不安全的问题: 冒充, , 三大风险.

  文章出处:【微信号:TheAlgorithm,微信号:算法与数据结构】欢迎添加关注!文章转载请注明出处。

  俄罗斯作为一个战斗的民族,同时也是我们重要邻国,一举一动都会影响到祖国的心情。继印度、俄罗斯和中....

  本文档介绍了如何使用PIC32以太网入门工具包II(也称为“入门工具包”)开发工具在目标板上仿真和调....

  无论您是要新建建筑、进行彻底的翻新,还是将现有的设施迁移到物联网架构,第一步都是要脱离开原有的流程,....

  软件定义网络是2009年左右才出现的新术语,被认为是网络未来的希望而备受关注,人们希望该技术能真的解....

  我们将展示如何利用我们的TSN评估套件将工业以太网流量(ODVA和Rockwell的以太网/IP协议....

  GigE Vision是一个基于以太网技术的标准化视频应用的通信协议。可以轻松实现GigE Visi....

  智能电网技术的主要特点是电力网络和IT实时数据通信技术的融合,通过智能电网用户可以合理的利用电力资源....

  我们将展示如何使用我们的TSN评估套件将以太网/IP转换为TSN流。本演示将在一条线上混合使用流量和....

  以太网在数据中心和企业局域网占主导地位。然而,由于以太网的成本优势、简单性和灵活性,为用户提供了具有....

  Molex 和行业的其他领导者之间开展的战略性协作的目标是简化快速、可靠的连接功能,使汽车的数据在智....

  随着大数据时代的不断发展,在AI和云计算等应用的影响下,数据中心已经成为相关企业提升竞争力的必备利器....

  大家好,又到了每日学习的时候了。今天我们来聊一聊以太网、局域网、互联网区别。 以太网是一种局域网,而....

  uboot 和内核里 phy 的初始化,以及内核里的双网络配置及 phy 的初始化。 本文以盈鹏飞嵌....

  在当今世界,互联网数据流量不断上升,移动设备的使用也呈爆炸式的增长,对于处理快速增长的数据和视频数据....

  许多现有的以太网设备正在从墙壁适配器电源转换,以利用新发布的IEEE 802.3AF以太网供电(PO....

  仪器(TI)近日在SimpleLink微控制器(MCU)平台上引入了以太网连接,这是一个用于....

  地面站软件支持精准三维航线规划、三维实时飞行与控制、飞行数据存储及可视化回放、飞机保养、正射....

  广濑电机即使在日本部件厂商中也是很有名的高收益企业。2015财年(2015年4月~2016年3月)的....

  美国Irvine市——业界领先的射频、微波及毫米波产品供应商美国Pasternack公司最近推出....

  以智慧城市的无线灯为例,通过ZigBee或LoRa的形式,无需对灯具进行、无需架设通信线、无....

  美国通过全球13台根服务器控制了因特网及其各接入国的用网,中国仅有部分镜像服务器和缓存服务器,美....

  在“5G承载技术发展研讨会”上,中国信息通信研究院技术与标准研究所副所长懿在中指出,承载技术....

  该文将嵌入式微系统的接入网技术作为主要研究对象,在进一步分析网络连接的结构体系及协议层次结构在嵌入式....

  近年,智能汽车在我国的发展可谓热火朝天,而在此方面的扶持力度亦逐步增强。1月初,国家发改委公布了....

  汽车以太网被认为是实现车辆连接的有效方法。它易于理解,价格合理且过时间的检验。此外,我们还有一个....

  线束是汽车内成本最高和重量最重的五大元件之一,所以使用单一经过验证的网络将有助于降低成本和重量。10....

  随着因特网的迅速发展,TCP/IP协议成为应用最多的通信协议。近来由于因特网的不断成长,人们对于....

  在 PROFINET 概念中,设备和工厂被分成为技术模块,每个模块包括机械、电子和应用软件。这些组件....

  这是HMS工业网络有限公司关于工业网络市场年度研究的主要发现。数据显示,工业以太网现如今占据新安装节....

  该应用报告详细描述了基于德克萨斯仪器的MSP430超低功耗微控制器系列的嵌入式Web服务器的实现。

  针对现有煤矿监测系统在功耗、通信及抗干扰方面存在的缺陷, 设计了新型的煤矿瓦斯分站。

  本文的目的是描述一种通过GPMC将以太网连接到各种设备的解决方案,例如OMAP35x和am37x。

  在WinCC flexible 软件的菜单栏选择“项目”>

  “传送”>

  “传输”,单击“传输”即可打开“....

  在科技高速发展的当今世界,随着电子技术和集成电技术的不断进步,半导体工艺的迅猛发展以及人们对信息高....

  在OFC2018上,以太网联盟牵头众多的设备厂商、芯片厂商、光模块厂商、连接器厂商、仪表厂商、光缆厂....

  如何在使用以太网控制器跟总线进行一些交换数据,可以看到我们有一个内部的网络组织,在芯片内部实现的,所....

  随着“智能制造”口号的实施跟相关产业的发展,CAN总线作为国际的三大工业总线之一,在智能机器人、....