文章目录

  • 网络协议
  • 局域网、以太网
  • OSI、TCP/IP结构模型
  • 数据包封装、分用
  • 交换机、路由器
  • IP地址和MAC地址
  • 寄语

全文约 3285 字,预计阅读时长:10分钟


网络协议

  使用计算机工作的人需要在计算机之间交互数据,于是诞生了网络。由于不同厂商对二进制 0 1 序列的解释不一样,因此计算机互相通信的时候,传递一个字节对应的每个值,标识的是不同的含义,这种含义需要双方达成共识,这种共识便是网络协议。网络协议是为计算机网络中进行数据交换而建立的规则、标准或约定的软硬件标准集合。

  网络协议的分层在层状结构的软件体系下,很方便的可以随时更换任何一层协议,解耦、哪一层出了问题就找谁,提高了程序的可维护性。结构中的每一层都规定有明确的服务及接口标准;把用户的应用程序作为最高层;除了最高层外,中间的每一层都向上一层提供服务,同时又是下一层的用户;把物理通信线路作为最低层,它使用从最高层传送来的参数,是提供服务的基础。

  国际标准化组织(ISO)在1978年提出了“开放系统互联参考模型”,即著名的OSI/RM模型(Open System Interconnection/Reference Model)。它将计算机网络体系结构的通信协议划分为七层,自下而上依次为:物理层(Physics Layer)、数据链路层(Data Link Layer)、网络层(Network Layer)、传输层(Transport Layer)、会话层(Session Layer)、表示层(Presentation Layer)、应用层(Application Layer)。OSI 这是一种理想化的模型,实际中应用更多的是 TCP/IP协议。

  美国国防部于1977年到1979年间制定了TCP/IP体系结构和协议。TCP/IP是由一组具有专业用途的多个子协议组合而成的,这些子协议包括TCP、IP、UDP、ARP、ICMP等。TCP/IP凭借其实现成本低、在多平台间通信安全可靠以及可路由性等优势迅速发展,并成为Internet中的标准协议。在上世纪90年代,TCP/IP已经成为局域网中的首选协议。


局域网、以太网

  局域网自然就是局部地区形成的一个区域网络,其特点就是分布地区范围有限,可大可小,大到一栋建筑楼 与相邻建筑之间的连接,小到可以是办公室之间的联系。局域网自身相对其他网络传输速度更快,性能更稳定,框架简易,并且是封闭性,这也是很多机构选择的原因所在。局域网自身的组成大体由计算机设备、网络连接设备、网络传输介质3大部分构成,其中,计算机设备又包括服务器与工作站,网络连接设备则包含了网卡、集线器、交换机,网络传输介质简单来说就是网线,由同轴电缆、双绞线及光缆3大原件构成。

  以太网是一种局域网内部通信标准。IEEE组织的IEEE 802.3标准制定了以太网的技术标准,它规定了包括物理层的连线、电子信号和介质访问层协议的内容。以太网是应用最普遍的局域网技术,取代了其他局域网技术如令牌环、FDDI和ARCNET。

  当一台计算机在局域网内部向另一台计算机通信时,其实其他计算机都看到了对应的信息,但只有目标计算机识别了这条信息。因此局域网中,就需要每一台主机都有自的身份标识MAC(Media Access Control Address)地址。网卡上的一个serialnumber序列号,全球唯一,由网络设备制造商生产时写在硬件内部。MAC地址则是48位的(6个字节),通常表示为12个16进制数,每2个16进制数之间用冒号隔开,如08:00:20:0A:8C:6D就是一个MAC地址。其前3字节表示OUI(Organizationally Unique Identifier),是IEEE的注册管理机构给不同厂家分配的代码,区分不同的厂家。后3字节由厂家自行分配 。


OSI、TCP/IP结构模型

  • TCP/IP通讯协议采用了5层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求:

    • 物理层: 负责光/电信号的传递方式. 比如现在以太网通用的网线(双绞 线)、早期以太网采用的的同轴电缆(现在主要用于有线电视)、光纤,现在的wifi无线网使用电磁波等都属于物理层的概念。物理层的能力决定了最大传输速率、传输距离、抗干扰性等. 集线器(Hub)工作在物理层,相当于一个驿站,对光电信号进行放大。
    • 数据链路层: 负责设备之间的数据帧的传送和识别. 例如网卡设备的驱动、帧同步(就是说从网线上检测到什么信号算作新帧的开始)、冲突检测(如果检测到冲突就自动重发)、数据差错校验等工作. 有以太网、令牌环网, 无线LAN等标准. 交换机(Switch)工作在数据链路层.
    • 网络层: 负责地址管理和路由选择. 例如在IP协议中, 通过IP地址来标识一台主机, 并通过路由表的方式规划出两台主机之间的数据传输的线路(路由). 路由器(Router)工作在网路层.
    • 传输层: 负责两台主机之间的数据传输. 如传输控制协议 (TCP), 能够确保数据可靠的从源主机发送到目标主机.
    • 应用层: 负责应用程序间沟通,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等. 我们的网络编程主要就是针对应用层。

  进一步简而言之,物理层+数据链路层:站在二进制角度,通过光电信号的方式,把数据信号发送给对方;网络层:如何找到目标主机的问题;传输层:如果在路上数据丢失,需要保证可靠性;应用层:对传输过来的数据,按照之前的约定、应用层协议,来完成某种计算的需求

  • OSI七层协议模型详细内容:
  • 互联网数据传输原理 |OSI七层网络参考模型

数据包封装、分用

  一般通信的时候,都是由应用层发起通信的,自顶向下,信息数据经历每一层都要添加自己的报头,同层看到的报文都是一样的,去掉报头,后面的就是有效载荷每层协议都必须解决两个问题:一,能够将自己的报头和有效载荷进行分离;二,每层协议的包头中一定包含了一个字段:标识要将自己的有效载荷交付给上层的哪一个协议。

  • 不同的协议层对数据包有不同的称谓:

    • 在传输层叫做段(segment)
    • 在网络层叫做数据包 (datagram)
    • 在链路层叫做帧(frame)。

  • 应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部(header),称为封装(Encapsulation),字节级别的拼接。

    • 首部信息中包含了一些类似于首部有多长, 载荷(payload)有多长, 上层协议是什么等信息。
  • 数据封装成帧后发到传输介质上,到达目的主机后每层协议再剥掉相应的首部,根据首部中的 “上层协议字段” 将数据交给对应的上层协议处理。
  • 每一层协议的共性:封装,解包分用

交换机、路由器

  局域网中,数据如果被多台主机同时发出,容易发生数据碰撞。因此规定任何一个时刻,局域网中,只允许一台机器像网络发送数据。每台主机都有识别碰撞的能力,每台主机都要执行碰撞避免算法,一个局域网称之为一个碰撞域交换机的作用:划分碰撞域,可明显地提高局域网的性能。

  路由器是跨局域网传输,是将不同的子网之间的数据进行转送传递。因此,我们把这个过程称之为寻址过程。因为在路由器处在不同网络之间,但并不一定是信息的最终接收地址。所以在路由器中, 通常存在着一张路由表。根据传送网站传送的信息的最终地址,寻找下一转发地址,应该是哪个网络。其实深入简出的说,就如同快递公司来发送邮件。邮件并不是瞬间到达最终目的地,而是通过不同分站的分拣,不断的接近最终地址,从而实现邮件的投递过程的。路由器寻址过程也是类似原理。通过最终地址,在路由表中进行匹配,通过算法确定下一转发地址。这个地址可能是中间地址,也可能是最终的到达地址。


IP地址和MAC地址

  MAC地址,旨在局域网中使用。IP地址:从哪里来,到哪里去。源IP,目的地IP,是进行路径选择的核心依据。源mac地址,目的mac地址,一直在变化,即上一站从哪里来,下一站去哪里;经过不同的站,最终到达目的IP主机。

  路由器是每个网络拓扑中的一台机器。有路由器的存在,可以做到根据不同的局域网制式,进行解包和封包。站在IP网络层往上看,全网的网络是没有任何差别的,完成了一种网络虚拟化的技术,IP网络。

  • IPv4地址和子网掩码

寄语

  • 【计算机科学速成课】[40集全/精校] - Crash Course Computer Science
  • TCP / IP 五层协议栈总结

Linux:计算机网络基础相关推荐

  1. 2018-3-28Linux系统管理(16)计算机网络基础

    在这一章当中我们讲述计算机网络基础. 一.计算机网络 网络通信就像人与人之间的交流一样,说同一种语言,而后双方进行无障碍的通信交流,那么两台主机通信时,它们彼此交换数据的格式的前提为互相理解才可以,我 ...

  2. linux基础操作与实践,Linux操作系统基础与实践

    <21世纪高等院校计算机网络工程专业规划教材:Linux操作系统基础与实践>由清华大学出版社出版. ¥19.18定价:¥29.50(6.51折) /2014-06-01 <Linux ...

  3. 网络通信学习笔记之——计算机网络基础知识

    一.计算机网络基础知识 1.什么是计算机网络 ​ 把分布在不同地理位置的计算机与专门的网络设备用通信线路互相连成一个规模大.功能强的系统, 从而使众多计算机可以方便地互相传递信息.共享软件.硬件.数据 ...

  4. 计算机网络基础以及进程查看管理

    文章目录 计算机网络基础 OSI协议分层 1.OSI协议 2.OSI协议分层 (7)应用层: (6)表示层 (5)会话层 (4)传输层 (3)网络层 (2)数据连路层 (1)物理层 TCP/IP协议分 ...

  5. 【Android开发】计算机网络基础知识点,如何完成网络请求过程?

    (一)计算机网络基础知识:从一次完整的网络请求过程分析 (1)域名解析 1.1)域名与ip地址 (1)ip地址:ip地址是一个32位(4字节)的二进制数(IPV4),常见格式为:192.168.1.1 ...

  6. 优秀课件笔记之计算机网络基础

    1.本文所以内容来自 著名高校课件和学生笔记(校园里面经常见到有人高价买笔记) 2.任课教师不会提供参考文献,所以只能对作者表示感谢,如果引用了您的作品,可以用回 复方式补充参考文献. 3.我不对文章 ...

  7. 计算机网络基础之计算机网络

    温故: 各位客官早,由于过年期间客栈久未营业,给各位过路的客官造成的不便还请多多谅解.为了回馈新老客户,本店决定自今日起特别奉送"计算机网络基础"套餐一份,希望各位客官能吃的尽兴, ...

  8. 计算机网络基础知识--TCP/IP协议、IP分组、TCP传输

    转 计算机网络基础知识--TCP/IP协议.IP分组.TCP传输 2017年12月08日 08:35:09 孔维昊 阅读数 1820 查看全文 http://www.taodudu.cc/news/s ...

  9. 第五章 网络 之 计算机网络基础(一)

    文章目录 (一)计算机网络基础知识:从一次完整的网络请求过程分析 (1)域名解析 1.1)域名与ip地址 1.2)域名系统(DNS--Domain Name System) a)DNS本质 b)域名的 ...

  10. 计算机网络基础面试题汇总

    计算机网络基础面试题汇总 网络协议和网络编程 重难点 参考资料来源于 netty权威指南(高性能的服务端开发) netty实战 Unix网络编程 AIO 鸟哥的linux私房菜 <刘超的趣谈网络 ...

最新文章

  1. javascript事件列表解说
  2. 今天带你们走进缓存的雪崩、击穿、穿透基本概念
  3. 小米redmi_小米Redmi小爱触屏音箱8,不仅屏幕大,而且功能多,价格更超值
  4. PyOpenCV 坐标系统
  5. 32 位的有符号整数_leetcode 7 整数反转
  6. Oracle BI11启动失败
  7. 一加8系列再次开售 全渠道销售额破亿
  8. 大数据_Hbase-API访问_Java操作Hbase_封装操作数据的工具类---Hbase工作笔记0015
  9. (笔试题)和一半的组合数
  10. Android定制组件之图文展示之中国好声音
  11. MOV AH,XXH INT XXH——BIOS中断和DOS中断
  12. 用TCP/IP实现自己简单的应用程序协议:成帧器部分
  13. android开发---9.MediaPlayer实现音乐播放的demo
  14. EasyUI 中combobox利用拼音进行检索
  15. RFID室内定位技术原理浅析-RFID室内人员定位-新导智能
  16. 外贸常用术语_外贸跟单常用术语
  17. PHP微信怎么计步数,微信运动怎么关注好友步数(微信运动计步功能使用方法介绍)...
  18. 我真的不懂路由器和交换机的区别
  19. Android EventBus使用
  20. 企业网站源码PHP附企业小程序源码

热门文章

  1. 当输入条件不符合规范c语言,【图片】【高二会考】选择判断答案大全【郑州12中吧】_百度贴吧...
  2. Advanced Auto Layout
  3. ubnt虚拟服务器端口转发,ubnt详细设置教程
  4. 易鲸捷数据库(EsgynDB)常用SQL
  5. python在线问卷调查系统源代码_基于Java Web的在线问卷调查系统 源码下载
  6. 短信验证码在线测试体验
  7. VFP全面控制EXCEL
  8. 第二次作业(个人作业):软件案例分析
  9. 微型计算机任务名称,任务五微型计算机的硬件组成.ppt
  10. 神经网络可以用来预测吗,神经网络预测的优点