计算机网络——初识网络

这篇具有很好参考价值的文章主要介绍了计算机网络——初识网络。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、局域网与广域网

1.局域网(LAN)

        局域网:即Local Area Network,简称LAN。Local即标识了局域⽹是本地,局部组建的⼀种私有⽹络。局域⽹内的主机之间能⽅便的进⾏⽹络通信,⼜称为内⽹;局域⽹和局域⽹之间在没有连接的情况下,是⽆法通信的。以下是实现局域网的几种方式:

(1)基于网线直接连接,如图1.1.1所示:

计算机网络——初识网络,计算机网络,计算机网络,网络,服务器
图1.1.1 基于网线直接连接

(2)基于集线器组建,如图1.1.2所示:

         要注意的是,集线器是把一个网口扩展成多个,扩展出的网口之间会有冲突,所以同一时刻只有一条路能通,相比之下,交换机则是扩展出这些路线,各个网口之间互不影响。

计算机网络——初识网络,计算机网络,计算机网络,网络,服务器
图1.1.2 基于集线器组建

(3)基于交换机组建,如图1.1.3所示:

计算机网络——初识网络,计算机网络,计算机网络,网络,服务器
图1.1.3 基于交换机组建

(4)基于交换机和路由器组建,如图1.1.4所示:

计算机网络——初识网络,计算机网络,计算机网络,网络,服务器
图1.1.4 基于交换机与路由器组建

2.广域网(WAN)

        广域网:即Wide Area Network,简称WAN。通过路由器,将多个局域⽹连接起来,在物理上组成很⼤范围的⽹络,就形成了⼴域⽹。⼴域⽹内部的局域⽹都属于其⼦⽹。其大致的实现逻辑可参考图1.2所示的方式:

计算机网络——初识网络,计算机网络,计算机网络,网络,服务器
图1.2 广域网搭建

二、网络通信基础

1.IP地址

        IP地址描述了一个设备在网络上的位置,在生活中,我们地址的地址例如:XXX省XXX市XXX区XXX小区这样来进行描述,在计算机中则是通过数字来进行描述地址(IP地址),IP地址是一个32位的二进制数,通常被分割成4个“8位二进制数”(也就是4个字节),为了方便表示,往往把IP地址表示成“点分十进制”的方式,使用3个.把四个字节分成四部分,每部分取值范围是0~255。例如:192.168.0.100。

2.端口号

        IP地址描述了主机在网络中的位置,那么端口号则是描述一个主机上的哪个应用程序,有了IP地址可以确定主机,但是一个主机上可以存在很多个程序在使用网络,这时候当主机收到网络数据时就需要区分出这个网络数据是要交给哪个应用程序的,这就像发送快递时,我们不仅需要指定收货地址(IP地址),还需要指定收获人(端口号)。

        每个程序在进行网络通信过程中都有一个端口号,这个端口号可以是用户手动指定,也可以系统自动分配,但是一个主机上程序之间的端口号不能冲突,这个端口号是一个0~65535的整数。

3.认识协议

        在有了IP地址与端口号后,我们可以确定网络中唯一的主机的唯一程序(进程),但是还是存在一个问题,网络通信是基于二进制0/1数据来传输的,如何描述对方我们发送的数据是什么样的呢?

        网络通信传输的数据类型有很多种:图片、音乐、视频、文本等,同一个类型数据格式也可能不同,这时候就需要协议来规定双方在网络传输过程中的数据格式了。

        协议:⽹络协议的简称,⽹络协议是⽹络通信(即⽹络数据传输)经过的所有⽹络设备都必须共同遵 从的⼀组约定、规则。如怎么样建⽴连接、怎么样互相识别等。只有遵守这个约定,计算机之间才能 相互通信交流。

        例如市面上有很多不同形状的灯管,但是他们和灯座上的接口是一定能对应上的,这是因为所有生产灯管的厂商都统一遵循灯管与灯座之间的规格,所以可以确保任意灯管与灯座之间的搭配是可行的,这就是现实生活中协议的一种体现。

4.网络通信五元组

        在TCP/IP协议中,⽤五元组来标识⼀个⽹络通信:

        1. 源IP:标识源主机。

        2. 源端⼝号:标识源主机中该次通信发送数据的进程。

        3. ⽬的IP:标识⽬的主机。

        4. ⽬的端⼝号:标识⽬的主机中该次通信接收数据的进程。

        5. 协议号:标识发送进程和接收进程双⽅约定的数据格式。

三、协议分层

1.分层的好处

        对于⽹络协议来说,往往分成⼏个层次进⾏定义。 分层的初心是为了让复杂的一个协议变成简单的多个协议,并且还附带了很多好处:

  • 上层协议直接使用下层协议即可,不需要了解下层协议的细节;

例如这里我们打电话,我们只要会说汉语就可以,并不需要了解电话的工作原理。  

计算机网络——初识网络,计算机网络,计算机网络,网络,服务器

  • 某一层的协议进行替换之后,对于其他层没有什么影响。

例如下图,当我们语言协议发生变化,或者电话协议发生变化,并不会影响我们的使用 

计算机网络——初识网络,计算机网络,计算机网络,网络,服务器

2.OSI七层模型

        OSI:即Open System Interconnection,开放系统互连

  • OSI 七层⽹络模型是⼀个逻辑上的定义和规范:把⽹络从逻辑上分为了7层。
  • OSI 七层模型是⼀种框架性的设计⽅法,其最主要的功能使就是帮助不同类型的主机实现数据传 输;

        OSI七层模型划分为以下七层:

计算机网络——初识网络,计算机网络,计算机网络,网络,服务器

 计算机网络——初识网络,计算机网络,计算机网络,网络,服务器

        OSI 七层模型既复杂⼜不实⽤:所以OSI七层模型没有落地实现。实际组建⽹络时,只是以OSI七层模型设计中的部分分层,也即是以下TCP/IP五层模型来实现。  

3.TCP/IP五层模型

        TCP/IP是⼀组协议的代名词,它还包括许多协议,组成了TCP/IP协议簇。TCP/IP通讯协议采⽤了5层的层级结构,每⼀层都呼叫它的下⼀层所提供的⽹络来完成⾃⼰的需求。

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

计算机网络——初识网络,计算机网络,计算机网络,网络,服务器

4.网络设备所处分层

(1)主机

        它的操作系统内核实现了从传输层到物理层的内容,也就是TCP/IP五层模型的下四层

(2)路由器(传统)

        它实现了从网络层到物理层,也就是TCP/IP五层模型的下三层

(3)交换机(传统)

        它实现了从数据链路层到物理层,也就是TCP/IP五层模型的下两层

(4)集线器

        它只实现了物理层

        当然,随着现在网络设备技术的不断发展,也出现了许多3层或4层的交换机,4层路由器,所以上述的说的网络设备都是传统意义上的交换机和路由器。

5.封装与分用

        封装与分用是网络传输数据过程中最核心的流程,这里我们以QQ发送与接收信息的过程来模拟封装与分用的步骤。

(1)封装

①应用层(应用程序)

        在应用层中所用到的应用层协议往往是实现这个程序的程序员自己定义的,例如QQ从消息输入框中获取到用户输入的hello就把这个字符串构造成一个应用层数据包,这样一个应用层数据包就是按照QQ这个程序自定义的应用层协议约定的格式来构造的。

计算机网络——初识网络,计算机网络,计算机网络,网络,服务器
应用层封装

        应用程序会调用操作系统提供的api,把这个数据包交给传输层。 

② 传输层

        传输层把应用层传来的数据作为一个整体再根据传输层的协议构造成一个传输层数据包,传输层中涉及到的协议最主要的就是TCP协议UDP协议,这里假定使用的是UDP协议进行通信,构造出来的数据包就是一个UDP数据包。

计算机网络——初识网络,计算机网络,计算机网络,网络,服务器
传输层封装

         像上面添加报头的过程就叫做“封装”,其实就是字符串的拼接,只不过报头有一定的数据结构,这里的UDP报头虽然不能保护数据,但是可以起到“贴标签”的类似效果,对于UDP报头最主要的信息就是源端口目的端口

        拼好的传输层数据包就可以交给下一层网络层继续进行封装了。(交给下层,指的是下层协议提供一组api,上层调用这个api(函数),并且把刚才构造好的数据通过参数传过去,下层协议就可以来处理这个数据了)。

 ③网络层

        网络层涉及到的最核心的协议就是IP协议,网络层通过IP协议将刚才传输层的UDP数据包作为一个整体再拼上一个IP协议的报头,构造成一个IP数据包。

计算机网络——初识网络,计算机网络,计算机网络,网络,服务器
网络层封装

         这里IP报头中最关键的信息就是源IP目的IP了。

        构造完IP数据包后,IP协议继续调用数据链路层的api,把数据再交给数据链路层的协议进行处理。

④数据链路层

        数据链路层中涉及到的核心协议是以太网协议,数据链路层通过以太网协议将网络层传来的IP数据包作为整体加上一个帧头与帧尾构造成一个以太网数据帧。

计算机网络——初识网络,计算机网络,计算机网络,网络,服务器
数据链路层封装

        封装结束后将以太网数据帧继续传给物理层。

⑤物理层

        把上面传来的以太网数据帧,二进制结构(一串0 1 0 1这样的数据)转换成光信号(光纤,通过光的频谱进行编码)/电信号(网线,高低电平)/电磁波(无线wifi),然后进行发送。

        经过上面的一系列操作,数据才算从A的电脑中发送出去了,这也就是封装的过程。

(2)分用

        分用的过程可以理解为封装的逆过程,这里我们就不考虑信息在中间的传输过程了,默认信息已经发送到B的电脑中,开始模拟分用的过程。

①物理层

        B的物理层收到了光信号/电信号/电磁波,就会把这些物理信号转换成数字信号(二进制的0 1 0 1数据),得到一个以太网数据帧,进一步的把得到的数据帧交给数据链路层进行处理。

 ②数据链路层

        数据来到数据链路层后,接收方要与发送方使用一样的协议才能进行分用,然后按照以太网数据帧的格式进行解析取出其中的载荷再交给上层协议。

计算机网络——初识网络,计算机网络,计算机网络,网络,服务器
数据链路层分用
 ③网络层

        按照IP协议的格式进行解析,取出其中载荷再交给上层协议。

计算机网络——初识网络,计算机网络,计算机网络,网络,服务器
网络层分用
④传输层

        前面我们约定传输层用的UDP协议,所以这里我们按照UDP协议格式进行解析,取出载荷再交给上层协议。

计算机网络——初识网络,计算机网络,计算机网络,网络,服务器
传输层分用
⑤应用层

        按照QQ应用程序内部的应用层协议格式来解析数据,QQ程序拿到这些信息后就会在窗口给你弹出提示并且把消息、消息的发送者、发生时间都显示到聊天窗口上。

计算机网络——初识网络,计算机网络,计算机网络,网络,服务器
应用层分用

        到这分用的过程就演示完了,其实数据在传输过程中经过交换机/路由器时也会进行封装与分用,经过一个个交换机/路由器数据才会传到目的地。 

四、基本术语介绍

        在每层协议中封装出的数据其实都有自己的一个名词后缀,标准如下:

包(packet)                IP数据包

段(segment)             TCP数据段

报(datagram)            UDP数据报

帧(frame)                  以太网数据帧

五、结语

        文章到此就要结束了,本篇文章主要介绍了计算机网络的基本概念与流程,可以让大家更直观的认识到计算机网络,如果你认为读了本篇文章您有所收获,希望给本篇文章点个赞,收藏走一波,后面我会继续与大家分享计算机网络的相关知识,关注博主不迷路~~~您的支持就是我创作最大的动力。文章来源地址https://www.toymoban.com/news/detail-861852.html

到了这里,关于计算机网络——初识网络的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 哈工大计算机网络实验一——HTTP代理服务器的设计与实现

    1. 设计并实现一个基本 HTTP 代理服务器。 要求在指定端口接收来自客户的 HTTP 请求并且根据其中的 URL 地址访问该地址所指向的 HTTP 服务器(原服务器),接收 HTTP 服务器的响应报文,并将响应报文转发给对应的客户进行浏览。 2. 设计并实现一个支持 Cache 功能的 HTTP 代理服

    2024年02月22日
    浏览(48)
  • 计算机网络套接字编程实验-TCP单进程循环服务器程序与单进程客户端程序(简单回声)

    1.实验系列 ·Linux NAP-Linux网络应用编程系列 2.实验目的 ·理解并掌握在程序运行时从命令行读取数据的C语言编程方法; ·理解并掌握基于命令参数设置并获取IP与Port的C语言编程方法; ·理解并掌握套接字地址的数据结构定义与地址转换函数应用; ·理解并掌握网络字节序

    2024年02月11日
    浏览(97)
  • 计算机网络套接字编程实验-TCP多进程并发服务器程序与单进程客户端程序(简单回声)

    1.实验系列 ·Linux NAP-Linux网络应用编程系列 2.实验目的 ·理解多进程(Multiprocess)相关基本概念,理解父子进程之间的关系与差异,熟练掌握基于fork()的多进程编程模式; ·理解僵尸进程产生原理,能基于|sigaction()或signal(),使用waitpid()规避僵尸进程产生; ·

    2024年02月12日
    浏览(46)
  • 计算机网络 day4 IP地址的两部分-A、B、C、D、E五类IP地址-私有地址-子网掩码-DNA服务器-域名解析服务

    目录 三创网络拓扑结构图:  普通家庭网络拓扑结构图:(也可以直接使用 子母路由器 (母:无线路由器)(子:信号放大器、中继器)) 网络层:(network layer) 搜索IP地址所在地:iP地址查询--手机号码查询归属地 | 邮政编码查询 | iP地址归属地查询 | 身份证号码验证在

    2024年02月01日
    浏览(54)
  • 初识计算机网络 | 计算机网络的发展 | 协议初识

    1.计算机网络的发展 “矛盾是普遍存在的,矛盾是事物联系的实质内容和 事物发展的根本动力 !” 计算机在诞生之初,在军事上用来计算导弹的弹道轨迹!在发展的过程中( 商业的推动,国家政策推动 ),计算机的应用场景被发现!被应用于各种各样的场景当中! 现在,

    2024年01月25日
    浏览(49)
  • 计算机网络——初识网络

            局域网:即Local Area Network,简称LAN。Local即标识了局域⽹是本地,局部组建的⼀种私有⽹络。局域⽹内的主机之间能⽅便的进⾏⽹络通信,⼜称为内⽹;局域⽹和局域⽹之间在没有连接的情况下,是⽆法通信的。以下是实现局域网的几种方式: (1)基于网线直接

    2024年04月29日
    浏览(43)
  • Linux->初识计算机网络

    目录 前言: 1 网络发展背景 2 协议 2.1 网络协议初识 2.2 协议分层 2.3 OSI、TCP/IP层状模型 2.4 协议和操作系统的关系 2.5 根据协议栈的通信 3 网络中的地址管理         本篇当中没有任何关于网络编程的讲解,全部是对网络的宏观理解,毕竟只有理解了网络实际的走向,后续学

    2024年02月16日
    浏览(43)
  • 计算机网络-分层结构,协议,接口,服务

    发送文件前要做的准备工作很多 把这个准备工作分层小问题解决,也就分层解决 每层相互独立,每层做的工作不同 界面自然清晰,层与层之间的接口能够体现层之间的关系同时要简洁明了,不用太多接口了 同一层对应的对等实体进行的操作是相反的 只有下层为上层提供服

    2024年01月22日
    浏览(45)
  • 计算机网络——16概述和传输层服务

    为运行在不同主机上的应用进程提供 逻辑通信 传输协议运行在端系统 发送方:将应用层的报文分成 报文段 ,然后传递给网络层 接收方:将报文段重组成报文,然后传递给应用层 有多个传输层协议可供应用选择 Internet:TCP和UDP 网络层服务:主机之间的逻辑通信 传输层服务

    2024年02月20日
    浏览(42)
  • 【计算机网络笔记】传输层服务概述、传输层 vs. 网络层

    什么是计算机网络? 什么是网络协议? 计算机网络的结构 数据交换之电路交换 数据交换之报文交换和分组交换 分组交换 vs 电路交换 计算机网络性能(1)——速率、带宽、延迟 计算机网络性能(2)——时延带宽积、丢包率、吞吐量/率 计算机网络体系结构概念 OSI参考模型

    2024年02月08日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包