网络入门基础模型, 网络大体框架, TCP/IP协议栈, 各种局域网和广域网刨析 (以图解的方式推开网络大门)

简介: 网络入门基础模型, 网络大体框架, TCP/IP协议栈, 各种局域网和广域网刨析 (以图解的方式推开网络大门)

一. 客户端服务端模型的引入

  • 网络服务,  客户端按照 TCP / IP 协议栈的规定将需要处理的数据通过网络网线实际传输到服务器端, 服务器返回客户端一个响应结果

二. 从操作系统的层次去宏观的看整个网络体系

  • 整体体系结构图解

  • 网络协议栈细节挖掘, 宏观介绍

细节刨析


应用层:   最上层, 我们直接可以接触到的一层,我们平时使用的手机app 都是在应用层实现的. 应用层只是专注于为用户提供功能服务, 不需要关心数据是如何传输的等等细节问题. (  仅对数据进行分析处理, 以达到业务性的目的   )


传输层:   应用层的数据包会传输给传输层, 保证数据尽可能可靠的传输给对方, 标志性是 TCP传输层协议, 相对于UDP  可以进行 流量控制, 超时重传, 拥塞控制.


网络层:  负责在复杂的网络大环境中完成数据转发, 也就是寻路   ( 进行路径选择等等, 处理数据该去哪里的问题)


数据链路层  +  物理层 :   完成数据的实际传输过程    

三.  网络的发展  从局域网介绍到广域网

  • 局域网:    所谓的局域网就是同一路由器或交换机下面连接的网段,说白了 就是在一个路由器或交换机下面连接的多个计算机,,就构成了一个局域网环境

局域网就是交换机连接不同主机构成的一个网段    (  同一个局域网中两台主机可以直接进行通信, 局域网就是为了同网络(网段) 通信 )

局域网中的数据封包和解包过程   ( 同一个局域网(网段)中  )

数据包装和分用  


不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在网络层叫做数据报 (datagram),在链路层叫做帧(frame).     (段   数据报  帧)


应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部(header),称为封装 (Encapsulation).        (自上而下的添加报头)


数据封装成帧后发到传输介质上,到达目的主机后每层协议再剥掉相应的首部, 根据首部中的 "上层协议 字段" 将数据交给对应的上层协议处理    (  自下向上的解包过程)


细节解剖


认识协议:  协议的本质是一种约定,   比如我们约定好  1.  怎么怎么样,   2.  怎么怎么样、、、、


协议为何要存在,      协议存在是为了统一标准.....

每一层的报头  和  有效载荷如何拆分?

局域网通信原理  

  • MAC 地址 :  网卡出厂时确定,  内置48位序号, 全球唯一.

如上 :  一般是 16进制位, 一个字节一个字节为分割, 分割符号是冒号.

  • MAC数据帧如下:

上述写dst  写的是全部f   :  代表的含义是向同一网段下, 同一个交换机下面的所有主机发送报文,也叫做广播....    如下的ARP 协议就是采取的这种方式, 广播的方式, 后序会慢慢解释

局域网的通信原理也是通过广播的方式完成的..

文字叙述一下局域网的通信原理: 一台主机向另一台主机发送数据包的时候, 事实上是同一个局域网中的所有主机都会收到这样的一个数据包, 只是会对于这个数据包进行判断, 如果不是发给自己的就会直接扔掉, 是发给自己的就接收.


要求:  一个时刻只能一个机器进行发送数据, 发生了碰撞当前主机是可以检测到的,  所有的主机都要进行 "碰撞避免" 算法

  • 广域网:
  • ⼀旦数据需要跨⽹络传输,就需要有⼀个设备同时在两个⽹络当中,这个设备⼀般是路由器,路由器可以通过路由 表计算出下⼀个要去的 IP 地址。
  • IP地址:   标识全网类的唯一一台主机. 默认都是IPV4 :  IPV4的意思是32位比特位标识IP地址
  • IP地址 以 点 作为分隔符号, 每一个分隔的数字都代表一个字节, 范围是 0 - 255.
  • 图解: 广域网中跨网段的数据传输过程。。。

四. 总结概述...   对于上述的很多理解作书面

网络分层:  自上而下:  应用层(开发层), 传输层,网络层. 数据链路层, 物理层


应用层 :  负责实现业务逻辑,  对用户提供服务


传输层 : 并不负责真正的传输,   而是做传输过程的监测者  保证尽可能的可靠传输数据, TCP协议  (  流量控制、超时重传、拥塞控制 ) 保证数据可靠传输给对方, UDP  (前面的各种保证可靠传输的机制全部没有)  我只管数据传输, 丢包, 网络拥堵我都不管, 传出去了就ok了,  我不会重传, 我只保证实时高效, 数据是否能到不管我事情, 对于 如何实时高效后序重点刨析各种协议会知道  


网络层 :  负责地址管理和路由选择.  负责规划数据传输过程, 数据下一站目的地究竟该传到哪(下一个IP地址), 将数据从一个设备传入到另外一个设备中, 如何找设备, 有IP, IP标识全网唯一一台主机设备,  所以路由器的作用就是寻路, 寻啥路, 寻下一个目的IP路......


数据链路层 和 物理层 :  加MAC报头,   和真正的传输数据, 物理层还涉及数据包的光电信号的转换, 因为只有转换之后才能真正在介质中传输


相关文章
|
1月前
|
监控 安全
从 Racket 语言出发,创新员工网络监控软件的框架
在数字化企业环境中,员工网络监控软件对于保障信息安全和提升效率至关重要。Racket 语言凭借其独特特性和强大功能,为开发创新的监控软件提供了新可能。通过捕获和分析网络数据包、记录员工网络活动日志,甚至构建复杂的监控框架,Racket 能够满足企业的定制化需求,为企业信息安全和管理提供强有力支持。未来,基于 Racket 的创新解决方案将不断涌现。
38 6
|
13天前
|
数据采集 存储 JSON
Python网络爬虫:Scrapy框架的实战应用与技巧分享
【10月更文挑战第27天】本文介绍了Python网络爬虫Scrapy框架的实战应用与技巧。首先讲解了如何创建Scrapy项目、定义爬虫、处理JSON响应、设置User-Agent和代理,以及存储爬取的数据。通过具体示例,帮助读者掌握Scrapy的核心功能和使用方法,提升数据采集效率。
57 6
|
21天前
|
机器学习/深度学习 人工智能
类人神经网络再进一步!DeepMind最新50页论文提出AligNet框架:用层次化视觉概念对齐人类
【10月更文挑战第18天】这篇论文提出了一种名为AligNet的框架,旨在通过将人类知识注入神经网络来解决其与人类认知的不匹配问题。AligNet通过训练教师模型模仿人类判断,并将人类化的结构和知识转移至预训练的视觉模型中,从而提高模型在多种任务上的泛化能力和稳健性。实验结果表明,人类对齐的模型在相似性任务和出分布情况下表现更佳。
49 3
|
1天前
|
网络协议 网络安全 网络虚拟化
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算。通过这些术语的详细解释,帮助读者更好地理解和应用网络技术,应对数字化时代的挑战和机遇。
13 3
|
1天前
|
存储 网络协议 安全
30 道初级网络工程师面试题,涵盖 OSI 模型、TCP/IP 协议栈、IP 地址、子网掩码、VLAN、STP、DHCP、DNS、防火墙、NAT、VPN 等基础知识和技术,帮助小白们充分准备面试,顺利踏入职场
本文精选了 30 道初级网络工程师面试题,涵盖 OSI 模型、TCP/IP 协议栈、IP 地址、子网掩码、VLAN、STP、DHCP、DNS、防火墙、NAT、VPN 等基础知识和技术,帮助小白们充分准备面试,顺利踏入职场。
9 2
|
12天前
|
网络协议 安全 Go
Go语言进行网络编程可以通过**使用TCP/IP协议栈、并发模型、HTTP协议等**方式
【10月更文挑战第28天】Go语言进行网络编程可以通过**使用TCP/IP协议栈、并发模型、HTTP协议等**方式
41 13
|
6天前
|
存储 安全 网络安全
网络安全法律框架:全球视角下的合规性分析
网络安全法律框架:全球视角下的合规性分析
16 1
|
14天前
|
数据采集 前端开发 中间件
Python网络爬虫:Scrapy框架的实战应用与技巧分享
【10月更文挑战第26天】Python是一种强大的编程语言,在数据抓取和网络爬虫领域应用广泛。Scrapy作为高效灵活的爬虫框架,为开发者提供了强大的工具集。本文通过实战案例,详细解析Scrapy框架的应用与技巧,并附上示例代码。文章介绍了Scrapy的基本概念、创建项目、编写简单爬虫、高级特性和技巧等内容。
39 4
|
13天前
|
网络协议 算法 网络性能优化
计算机网络常见面试题(一):TCP/IP五层模型、TCP三次握手、四次挥手,TCP传输可靠性保障、ARQ协议
计算机网络常见面试题(一):TCP/IP五层模型、应用层常见的协议、TCP与UDP的区别,TCP三次握手、四次挥手,TCP传输可靠性保障、ARQ协议、ARP协议
|
14天前
|
网络协议 物联网 API
Python网络编程:Twisted框架的异步IO处理与实战
【10月更文挑战第26天】Python 是一门功能强大且易于学习的编程语言,Twisted 框架以其事件驱动和异步IO处理能力,在网络编程领域独树一帜。本文深入探讨 Twisted 的异步IO机制,并通过实战示例展示其强大功能。示例包括创建简单HTTP服务器,展示如何高效处理大量并发连接。
36 1