TCP/IP分层模型与网络认知

计算机网络分层模型(OSI和TCP/IP) 计算机网络分层模型(OSI和TCP/IP) 前言 网络中传输数据时需要定义并遵循一些标准,以太网是根据IEEE 802.3标准来管理和控制数据帧的。了解IEEE802.3标准是充分理解以太网中链路层通信的基础。 网络通信协议 20世纪60年代以来,计算机网络得到了飞速发展。各大厂商和标准组织为了在数据通信网络领域占据主导地位,纷纷推出了各自的网络架构体系和标准。 如IBM公司的SNA协议,... 阅读详情

自从参加了工作,对于网络底层协议的透彻了解越来越在工作中占大比例,而以往在关于网络编程上,计算机网络基础也仅仅停留在who是tcp,who是http的层面,真正网络传输的一整套流程和模型没有基础性认知,为此专门花时间将新学习到的计网知识记录于此,以便自己巩固和帮助他人。

  • 分组交换/包交换
    如今所有的计算机网络都是分组交换了,将计算机之间交换的数据按包package进行拆分,然后再到网络中传输,这种机制有个最大的好处就是节省网络搭建成本——以传统电话网(电路交换)为反例,我们在偏远地区拨打电话,不是每次都能听到嘟嘟的响声(其实没有跟目标节点建立电缆连接),以为本地电缆已经饱和,无法再提供给你,等到其他人挂电话,电缆空出来,你才能获得相应的连接。而分组交换,将网络覆盖区中所有计算机的传输数据都共享同一条电缆,因为其数据包上各自包含了自己的目标地址,所有会以数据包为基本单位进行路由。当然,还有其他的好处,比如能进行包的检验。

  • 主机网络层

    在tcp/ip网络模型中,处于底层的网际层,负责将所有数据通过物理设备传输到目标节点上。而所谓的数据,无非是二进制的数据位,0010101001,在电缆传输中,将其转换成电磁波,通过线缆移动来传输数据。当然了,如果用的是wifi,那就是将数据位转换成了无线电波,在空气中移动。

  • 网际层IP

    其实可以理解为路由,寻址层,就是寻找目标计算的相关逻辑层,IP数据包,每个数据包上包含了首部、源地址、目的地址和数据body。IP协议又分为IPV4和IPV6,地址长度从32位编导128位,一般v4的数据包大小在几十B到8KB左右,而V6似乎有点变态,能达到4G。IPV4由4个字节组成,每个字节最高位转换成十进制是255,IPV6由16个字节组成,分成8个区块,每个区块是4个十六进制的数字。

  • 传输层
    TCP协议中,为了保证可靠性,要解决数据包的破坏、丢失和传输顺序。如果数据包从源TCP层中发出,传输到目标TCP层时,检查机制发现数据包被破坏或者丢失,就原路返回到源TCP层,进行数据包的重传。所以TCP协议要置于ip协议之上,才能在连接的两端确认接收IP包的情况,进行重传和检查顺序等。对于java程序员来说,只需要认识TCP和UDP以及建立在其上的应用层协议就可以了。这里提到UDP,可能大家会觉得这是很不可靠的东西,但是在例如视频、直播类的传输中就是使用UDP,原因我自己总结有:用户对数据完整度不敏感,丢失一两个数据位对用户来说可能感觉不到;再者如果使用的是TCP,当出现丢包使用,TCP为了保证完整性和顺序,要等待所有包接收完毕才传到应用层,这对于用户来说是很致命的,假如你观看一部电影,视频加载因为后面一段数据位丢失而导致前面加载好的内容不能先观看,真是fuck;最后UDP还能通过一个方案,比如纠错码等来解决丢包等问题。

  • 应用层
    网络数据从TCP传输上来后,如何变成用户想要的效果呢,比如用户想看到一张图片,而TCP传过来的只是一串数据流,那么进行这个转换工作的,就是应用层干的。在网络数据的传输中,应用层是最费时间的(传输数据成果的情况下)。我们可以自定义应用层协议,解析不同数据流成为我们想要的效果。很多公司内部自定义的协议,都是基于http的,这样就可以复用http应用层的解析成果,然后再扩展自己想要的功能。


再来聊聊网络中的广播,这个功能场景似乎很重要,但平时接触到却没去思考这是它的功能。比如在一个本地网络中接入一台笔记本电脑,想象成脸上wifi,那么这台设备会向本地网络中所有节点发送一次广播,寻找本地网络的DHCP节点。只有本地网络中的DHCP服务器(一般是路由器)会理他,给他回应这台笔记本今后在这个本地网络中的标志(内网IP地址),可能还附带了本地的DNS服务地址之类的。


传闻解决IPV4燃眉之急的NAT技术,内网的设备,如上文的笔记本电脑访问www.baidu.com,在请求数据包经过NAT路由器的时候,其IP报文上的源地址改成了路由器的外网地址,然后再请求到百度的首页服务器。百度返回的数据包,只能达到路由器,路由器中经过内部的映射表,入站连接路由到内网对应的服务器上。

计算机网络 (1) --TCP/IP 分层和网络分层 1. TCP/IP 网络之间互相通信,就必须制定一些规则,比如怎么搜索到目标,怎么开始,结束通信,这种规则我们称为协议。 TCP/IP是互联网相关的各类协议族的总称,通常使用的网络是在tcp/ip协议族的基础上运作的,http属于它内部的一个子集。 1.1TCP/IP分层 1.2为什么要分层 假如有地方需要改变设计,分层的话就只改变需要改动的层即可,不用整个替换;设计变简单,处于应用... 阅读详情

相关推荐

4G通信技术介绍

4G技术简介,介绍了4G技术发展背景、主要优势、现实应用、实现方法、技术解读、存在缺陷

Java基础-网络编程(一)

1. 简介:网络编程,在不同的语言中都会出现的一个词语——网络编程。今天,我想介绍的是在我眼中的Java网络编程。2.IP地址与端口号:说到网络编程那么不得不提的两个东西,IP地址与端口号,那么什么是IP地址?什么是端口号呢? 1 IP地址 : 用来标志网络中的一个通信实体的地址。通信实体可以是计算机,路由器等。 2 IP地址分类: IPV4:32位地址,以点分十进制表示,如192.168.

奋斗的蛐蛐 867

AI 代码生成工具的质量评估体系

基础需求层包括响应速度(Response Time)和界面友好性(UI Friendliness),期望需求层涵盖智能提示(Smart Suggestions)和个性化配置(Personalization),兴奋需求层则涉及多模态交互(Multimodal Interaction)和代码进化(Code Evolution)。在金融领域,代码审计合规性(Compliance Audit)权重应提升至40%,而在Web开发中,API兼容性(API Compatibility)的权重需达到35%。

2503_92418637的博客 3372

JavaEE - 网络初始之TCP/IP五层模型

网络编程 网络编程基础 什么是网络编程 网络编程,指网络上的主机,通过不同的进程,以编程的方式实现网络通信(或称为网络数据传输)。 当然,我们只要满足进程不同就行;所以即便是同一个主机,只要是不同进程,基于网络来传输数据,也属于网络编程。 特殊的,对于开发来说,在条件有限的情况下,一般也都是在一个主机中运行多个进程来完成网络编程。 但是,我们一定要明确,我们的目的是提供网络上不同主机,基于网络来传输数据资源: 进程A:编程来获取网络资源 进程B:编程来提供网络资源 网络编程中的基本概念 发送端和接收端

旧时言的博客 877

DFT实训教程笔记2(bibili版本)- Scan synthesis practice

文章目录Scan synthesis practice 本博文是博主记录DFT实训教程的笔记版本,此笔记并没有对所有的知识进行记录,仅仅以自身的认知水平,来记录了一些部分笔记并加上了自己的理解。 Scan synthesis practice How to design scan clock structure? 假设一块chip里面有好几十个clock domain,如果每一个clock domain都用一个scan clock虽然会非常清晰,但是IO数目肯定不够用。 clock group: 1、no

ciscomonkey的博客 9082

SRC漏洞挖掘实战指南:从零入门到月入过万的网络安全副业

网络安全的核心在于识别和修复系统缺陷,其中逻辑漏洞与信息泄露是常见的安全风险。其原理在于应用程序在业务逻辑设计或数据处理过程中存在缺陷,导致未授权访问或敏感数据暴露。掌握这些技术对于构建安全的应用体系至关重要,不仅能有效防范攻击,也为安全研究人员提供了将技术能力变现的合法途径。在漏洞赏金(Bug Bounty)和SRC(安全应急响应中心)等应用场景中,白帽子通过系统化的测试方法,挖掘此类漏洞,既能获得经济回报,又能积累宝贵的实战经验。本文聚焦于逻辑漏洞与信息泄露的实战挖掘技巧,为初学者提供清晰的入门路径和效

weixin_28568819的博客 350

TCP/IP五层模型

认识协议 “协议”是一种约定。 计算机之间传输媒介是光信号和电信号,通过“频率“和”“强弱”来表示0、1这样的信息,想要传递不同的信息,需要约定好双方的数据格式。 网络协议是一个共同标准,大家都来遵守。 为了让两台主机通信,需要协议和标准的数据格式才能进行通信。 协议分层(分层最大的好处就是便于封装) OSI七层模型: 1、OSI七层网络模型称为开发式系统互联网参考模型,是一...

ffsiwei的博客 3万+

华为海思IC前端中后端(COT&XPU)岗位笔试机考题

华为海思COT和XPU部门IC前端,IC中端,IC后端岗位笔试真题分享

weixin_37584728的博客 3362

Java中的TCP/IP协议和IP地址

转载:http://www.jb51.net/article/73189.htm这篇文章主要介绍了Java中的IP地址和InetAddress类使用详解Java语言的优势之一是Java程序能访问网络资源。Java提供一系列的类支持Java程序访问网络资源。TCP/IP协议和IP地址   为了进行网络通信,通信双方必须遵守通信协议.目前最广泛使用的是TCP/IP协议,它是Internet中各方所遵循...

love_Aym的博客 1188

基于YOLOv8的包装商品智能检测系统完整指南—含论文、代码

《基于YOLOv8的包装商品智能检测系统》摘要: 本文提出了一套完整的零售商品自动检测解决方案,利用YOLOv8深度学习框架实现高精度、高效率的商品识别。系统针对SKU110K大规模商品数据集(含11,762张高密度货架图像)进行优化,包含数据预处理、模型训练、推理检测和可视化界面全流程。详细介绍了从CSV标注到YOLO格式的转换方法、环境配置指南及技术架构设计。该系统可应用于智能零售、物流仓储等多个场景,有效解决人工盘点效率低、误差大的痛点。实验表明,该系统具备毫秒级检测速度和批量处理能力,为商业数字化转

FJN110的博客 209

从 Claude Code 到 SAP ADT,vibing-steampunk 把 ABAP 开发带进 Agentic 工程现场

vibing-steampunk(vsp)是一个连接SAP ADT API与AI编码代理的桥梁工具,通过MCP协议实现ABAP开发的自动化。它绕开传统GUI脚本方式,直接利用ADT REST API进行代码读写、调试和部署。该工具提供包分析、边界检查、LUW分析等功能,并创新性地采用Hyperfocused模式和方法级编辑来优化token使用效率。通过上下文压缩技术,vsp能智能提取关键代码片段,显著提升AI处理ABAP代码的精准度,为SAP系统现代化改造提供了高效的技术路径。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 190

Linux:网络的初步认知

网络的初步认识

海绵宝宝de派小星的博客 5462

PCL RANSAC拟合直线并插值

空间直线线性插值的原理与实现方法。

点云侠的博客 136

互联网的神经网络:OSI七层分层模型深度讲解

本文深入探讨计算机网络体系结构的基础理论,通过详细分析OSI七层模型的每一层功能、协议、数据流向以及实际应用场景,帮助技术人员建立对网络通信的全面理解。

nmdbbzcl的博客 741

Unity 面试篇|(二)Unity基础篇 【全面总结 | 持续更新】

在主线程运行的同时开启另一段逻辑处理,来协助当前程序的执行,协程很像多线程,但是不是多线程,Unity的协程实在每帧结束之后去检测yield的条件是否满足。一个程序在运行(执行)的过程中所需要的硬件和软件环境运行时的主要作用是提供程序运行所需要的环境和基础设施,通过为程序提供内存分配、线程管理、类型检查、对象实例化和垃圾回收等操作来支持程序的运行公共语言运行时(Common Language Runtime,CLR)是整个.NET框架的核心,它为.NET应用程序提供了一个托管的代码执行环境。

游戏开发小Y的博客 13万+

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

深入理解OSI七层模型与TCP/IP四层模

深入理解OSI七层模型与TCP/IP四层模

https://ophome.blog.youkuaiyun.com,在IT行业有多年的工作经验,尤其是在Python、Linux、负载均衡、Nginx和服务器运维等领域。 1559

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

计算机网络入门:从分层模型到性能指标,夯实网络基础

计算机网络是现代信息技术的基石,其核心思想是通过分层模型将复杂的通信任务模块化,以实现高效、可靠的数据交换。OSI七层模型与TCP/IP四层模型是理解网络体系结构的关键框架,其中分层思想通过定义清晰的协议、服务和接口,实现了系统的标准化与灵活性。掌握速率、带宽、吞吐量、时延等关键性能指标,对于评估和优化网络性能至关重要,这些指标直接影响着从网页加载到实时音视频等各类应用的用户体验。本文聚焦于计算机网络概述,深入剖析分层模型、协议服务接口辨析以及核心性能参数,旨在帮助读者构建坚实的网络知识框架,为后续深入学习

weixin_32667955的博客 231

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

TCP/IP模型与协议族详解

WWWWorldWideWeb(万维网),就是我们日常说的"上网浏览网页"。它是建立在互联网(Internet)之上的一种信息服务系统。💡区分概念:Internet(互联网)是基础设施,像公路网;WWW(万维网)是跑在公路上的"公交车系统",是其中一种服务。统一资源定位符,通俗说就是"网址"。用什么协议、去哪个服务器、找哪个文件。│ 你打开浏览器,输入 https://www.baidu.com ││ ↓ │。

qq_58662768的博客 381

别再死记硬背了!用‘寄快递’和‘打电话’的例子,5分钟搞懂网络协议分层

本文通过‘寄快递’和‘打电话’的生活场景,生动解析了网络协议分层的核心逻辑。从TCP/IP四层模型到OSI七层模型,详细类比了数据包在网络中的传输过程,帮助读者快速理解分层设计的优势和应用场景,提升网络故障排查效率。

weixin_30443075的博客 521

TCP/IP 五层模型:用寄快递看懂网络通信流程

TCP/IP五层模型通信流程解析 本文通过寄快递的生动类比,形象解释了TCP/IP五层模型的工作原理。发送数据时,信息从应用层到物理层逐层封装:应用层处理用户数据(如微信消息),传输层添加端口号,网络层加上IP地址,数据链路层补充MAC地址,最后物理层转为比特流传输。接收端则逆向解封装。五层模型各司其职,实现了网络通信的高效可靠传输,核心协议包括HTTP、TCP/IP、以太网等。这种分层设计降低了网络复杂度,便于单独优化升级。

2301_81120700的博客 658

【TCP/IP】概述网络分层以及协议介绍

本文是该系列文章的第一篇,将简单概述一下网络分层等简单知识 网络分层以及协议介绍 网络通信是一个非常复杂的过程,国际标准组织(ISO)将这个过程分为七个层次,将其称为OSI模型,七个层次分别为:应用层、表示层、会话层、传输层、网络层、数据链路层、物理层 之所以将其分为七个层次,是为了让开发人员可以在不同的领域分别实现整个系统的不同部分,就像一个非常庞大的工程,每个员工都有自己擅长的岗位和专门负责的工作。

零一的博客 3万+

网络协议分层:解密TCP/IP五层模型

本文系统地阐述了网络通信的核心概念。协议是设备之间为完成通信而建立的共同规则和标准。TCP/IP协议族是互联网的实际通信标准,其核心功能(如封装、寻址、路由)通常作为服务集成在操作系统内核中,是OS不可或缺的组成部分。网络传输的基本流程则遵循“分层封装”与“逐层解封装”的模型,数据从应用层出发,经过传输层(如TCP段)、网络层(IP包)、网络接口层(帧)的包装,通过物理媒介传输,最终在目标设备被逆向拆解,送达目标应用程序,从而完成一次完整的通信。

2402_84532723的博客 2898

TCP/IP协议分层模型详解

TCP/IP协议 分层模型 数据包传输 网络协议

latico的博客 4万+

OSI 和 TCP/IP 网络分层模型详解

本文详细解析了OSI七层模型与TCP/IP四层模型两大网络分层框架,其中OSI七层模型作为国际标准化组织提出的理论模型,虽概念清晰、理论完整,但因复杂、低效、标准制定周期长等原因未广泛应用,却为网络分层提供了重要理论基础;TCP/IP四层模型作为其精简版本,是目前互联网广泛采用的模型,分为应用层、传输层、网络层和网络接口层,各层各司其职,应用层提供应用程序间信息交换服务,传输层负责进程间数据传输,网络层处理路由和寻址,网络接口层整合数据链路层与物理层功能。为计算机网络学习、笔试备考提供了清晰的知识体系。

独断万古他化的博客 6568

网络协议分层模型

一、OSI网络分层模型 1、协议的分层 在OSI网络分层模型中,每个分层都接收由它下一层所提供的特定服务,并且负责为自己的上一层提供特定的服务。上下层之间进行交互时所遵循的约定叫做接口。同一层之间的交互所遵循的约定叫做协议 2、OSI参考模型 第七层:应用层,为应用程序提供服务并规定应用程序中通信相关的细节。包括文件传输、电子邮件、远程登录等协议 第六层:表示层,将应用处理的信息转换为适合网...

hxt的博客 9188

网络协议分层--OSI七层模型, TCP/IP五层(四层)模型

一篇文章让你搞懂i网络协议分层---OSI七层模型, TCP/IP五层(四层)模型

qq_52592775的博客 4677
上一篇: “不懂异步的过来”
下一篇: vue初窥
@云师兄
博客等级 码龄10年 10粉丝 39原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值