网络入门基础模型, 网络大体框架, 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天前
|
数据采集 存储 中间件
Python进行网络爬虫:Scrapy框架的实践
【8月更文挑战第17天】网络爬虫是自动化程序,用于从互联网收集信息。Python凭借其丰富的库和框架成为构建爬虫的首选语言。Scrapy作为一款流行的开源框架,简化了爬虫开发过程。本文介绍如何使用Python和Scrapy构建简单爬虫:首先安装Scrapy,接着创建新项目并定义爬虫,指定起始URL和解析逻辑。运行爬虫可将数据保存为JSON文件或存储到数据库。此外,Scrapy支持高级功能如中间件定制、分布式爬取、动态页面渲染等。在实践中需遵循最佳规范,如尊重robots.txt协议、合理设置爬取速度等。通过本文,读者将掌握Scrapy基础并了解如何高效地进行网络数据采集。
20 6
|
2天前
|
网络协议 Windows
在电脑上测试TCP/UDP端口是否开放,还是得网络大佬这招厉害!
在电脑上测试TCP/UDP端口是否开放,还是得网络大佬这招厉害!
|
4天前
|
网络协议 视频直播 SDN
计算机网络:TCP协议的三次握手和四次挥手与UDP协议区别.
计算机网络:TCP协议的三次握手和四次挥手与UDP协议区别.
16 1
|
6天前
|
机器学习/深度学习 人工智能 PyTorch
AI智能体研发之路-模型篇(五):pytorch vs tensorflow框架DNN网络结构源码级对比
AI智能体研发之路-模型篇(五):pytorch vs tensorflow框架DNN网络结构源码级对比
20 1
|
11天前
|
网络协议 Java 关系型数据库
16 Java网络编程(计算机网络+网络模型OSI/TCP/IP+通信协议等)
16 Java网络编程(计算机网络+网络模型OSI/TCP/IP+通信协议等)
41 2
|
14天前
|
缓存 网络协议 Linux
扩展Linux网络栈
扩展Linux网络栈
15 3
|
16天前
|
机器学习/深度学习 人工智能 TensorFlow
神经网络入门到精通:Python带你搭建AI思维,解锁机器学习的无限可能
【8月更文挑战第3天】踏入人工智能领域,神经网络是开启智慧之门的钥匙。它不仅是一种技术,更是模仿人脑学习与推理的思维方式。从理解神经元间的连接到构建神经网络的基本概念,再到使用Python与TensorFlow搭建手写数字识别模型,每一步都揭示着机器学习的奥秘。随着深入学习,我们将探索更高级的主题,比如深度神经网络、卷积神经网络和循环神经网络,以及如何优化模型性能。掌握背后的数学原理,将帮助我们设计更高效准确的模型。在这个旅程中,Python将是我们的得力助手,引领我们探索AI世界的无限可能。
23 2
|
18天前
|
Java 应用服务中间件 Linux
(九)Java网络编程无冕之王-这回把大名鼎鼎的Netty框架一网打尽!
现如今的开发环境中,分布式/微服务架构大行其道,而分布式/微服务的根基在于网络编程,而Netty恰恰是Java网络编程领域的无冕之王。Netty这个框架相信大家定然听说过,其在Java网络编程中的地位,好比JavaEE中的Spring。
|
20天前
|
网络协议 算法 安全
【网络协议基础】TCP/IP协议大全
TCP/IP协议是现代计算机网络通信的基础,是互联网及局域网广泛使用的一套协议。TCP/IP协议集采用分层模型,以便于网络的设计、实现和管理。
15 2
|
2天前
|
运维 网络协议 API
入门网络,少不了这份详细的网络基础学习指南!
入门网络,少不了这份详细的网络基础学习指南!