【网络编程一】初识网络:IP与端口号 网络模型

news2024/11/26 23:46:49

目录

🌟需要知道

一、基础概念

🌈1、IP地址与端口号

🌈2、五元组

二、协议分层

🌈1、OSI七层网络网络模型

🌈2、TCP/IP五层(四层)模型

🌈3、封装和分用(重点!)


🌟需要知道

1、什么是网络?

        将多个计算机通过网线(传输介质)连接在一起就形成了初级的网络。        连接方式主要有以下几种:

(1)基于网线直连:

 (2)基于集线器组建:(集线器是一种网络设备)

(3)基于交换机组建:

 (4)基于交换机和路由器组建:


2、根据网络规模的大小分为局域网和广域网。

(1)局域网:一般指网络规模较小;比如一个公司,一个学校;

(2)广域网:一般指网络规模较大,通常我们指的是国际互联网。


一、基础概念

🌈1、IP地址与端口号

1、IP地址与端口号      

      IP地址 : 端口号 

(1)IP地址:表示主机在网络中的地址

(2)端口号:表示主机中的某一个进程使用网络的进程在启动的时候系统都会分配一个端口号。一般主动申请的,作为服务端;被动申请的,作为客户端。

有一个特殊的IP: 127.0.0.1这个IP表示本机的环回网卡的IP,每台计算机都一样,用来表示本机。

        端口号的范围是1-65535,但是1-1024是知名端口号(表示已经有明确的程序占用了)。我们自定义的程序一般在1025-65535之间任意选择一个没有被占用的。


2、内网IP:

(1)内网IP在当前的内网中不能重复,但是在不同的内网中可以重复;

(2)公网IP在整个互联网中都不能重复。


3、IPv4与IPv6

(1)IPv4中:IP的表示格式:点分十进制

        IP地址本质上是一个32位的整型,每8位做一个分隔,每一位范围是0-255。因此表示的最大范围是255.255.255.255。以目前的IPv4协议中,IP地址共有42亿个。但IPv4的地址个数并不太够用,因此现在国内在大力推广IPv6。

(2)IPv6


4、协议:协议就是一种约定

🌈2、五元组

综合以上的概念,网络通信中有一个五元组的概念。

(1)源IP:表示源主机;

(2)源端口:表示源主机此时使用的是哪个应用程序进行通信发送数据;

(3)目标IP:表示目标主机;

(4)目标端口:表示目标主机此时使用哪个应用程序来进行通信接收数据;

(5)协议号:表示发送进程和接收进程中双方约定的数据格式。

        通过五元组就可以明确表示出网络中,是哪台主机向哪一台主机发送了什么数据。

二、协议分层

举个栗子🌰

🌈1、OSI七层网络网络模型

        应用层 - 表示层  -会话层 - 传输层 - 网络层 - 数据链路层 - 物理层。

        这种分层只是存在于教科书中,工作中不这么分。实际组建网络的时候, 只是以 OSI 七层模型设计中的部分分层,也即是以下 TCP/IP 五层(或四层)模型来实现。

🌈2、TCP/IP五层(四层)模型

 

🌈3、封装和分用(重点!)

以QQ发送消息为例,模拟消息在网络中的封装与分用过程:

(1)封装过程: 

  (2)分用过程:


 


 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/573507.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Kotlin 协程中的并发问题:我明明用 mutex 上锁了,为什么没有用?

前言 最近在接手的某项目中,主管给我发来了一个遗留以久的 BUG,让我看看排查一下,把它修复了。 项目的问题大概是在某项业务中,需要向数据库插入数据,而且需要保证同种类型的数据只被插入一次,但是现在却…

每日一练 | 网络工程师软考真题 Day13

阅读以下说明,回答以下问题1至问题6。 【说明】 某公司的两个部门均采用Windows 2003的NAT功能共享宽带连接访问Internet,其网络结构和相关参数如图2-1所示。ISP为该公司分配的公网IP地址段为202.117.12.32/29。 【问题1】在Windows 2003中,…

NodeJS Crypto加密⑤

文章目录 ✨文章有误请指正,如果觉得对你有用,请点三连一波,蟹蟹支持😘前言NODE内置模块Zlib模块 createGzip(CreateGzip方法 异步)Crypto加密模块 getHashes 方法 createHash 方法 createHmac 方法…

野火RA6M5开发板 DHT11温湿度传感器 OLED显示测试学习

野火RA6M5开发板 DHT11温湿度传感器 OLED显示测试学习 DHT11温湿度传感器 DHT11是一款有已校准数字信号输出的温湿度传感器。 精度湿度5%RH, 温度2℃,量程湿度20-90%RH, 温度0~50℃。 更多DHT11信息请参考:https://baike.sogou…

img[:, :, ::-1] 通俗理解

👨‍💻个人简介: 深度学习图像领域工作者 🎉工作总结链接:https://blog.csdn.net/qq_28949847/article/details/128552785 链接中主要是个人工作的总结,每个链接都是一些常用demo&#xff0c…

Redis5.0+ Redis集群水平扩容|节点删除

文章目录 1. 背景2. Redis集群水平扩展2.1 启动集群2.2 连接其中一个节点2.3 配置新节点2.4 启动新节点2.5 配置8007节点加入集群,成为主节点2.6 增加子节点2.7 分配hash槽2.8 检查 Redis 集群 3. 节点删除4. redis集群命令帮助5. 参考文献 1. 背景 之前搭建了Redi…

硬件系统工程师宝典(26)-----四种BJT应用电路分析

各位同学大家好,欢迎继续做客电子工程学习圈,今天我们继续来讲这本书,硬件系统工程师宝典。上篇我们说到晶体三极管(BJT)的几种应用电路:三极管的输入端钳制电压电路、BJT电平转换电路、Boost升压电路、图腾…

WGCNA | 不止一个组的WGCNA怎么分析嘞!?~(二)(共识网络分析-第二步-构建网络与模块-Blockwise)

1写在前面 临床工作越来越忙了,更新的频率也开始降低了,希望各位小伙伴可以理解一下。😭 最近看到塞尔达-王国之泪发售了,真的是想买一个,但想想根本没有时间去玩,买回来只能吃灰。🥲 想问问小伙…

G0第22章 :获取参数、文件上传、重定向、Gin路由、Gin中间件、运行多个服务

05 获取参数 1、获取querystring参数 querystring 指的是URL中的 ? 后面携带的参数,例如: /user/search?username小王子&address天津 。获取请求querystring参数的方法如下: package mainimport ("github.com/gin-gonic/gin&qu…

Git基础笔记(只含常用命令)

1.Git基本概念 1.git三区 工作区 -->git add 暂存区 --> git commit版本区域 暂存区用来存放临时文件,相当于只编辑没有保存 2.文件状态 命令 git status 查看文件状态 大体来说有被版本管理和没被版本管理两种状态 a.txt 执行了git add 3.git本地仓库命令 g…

面试篇:SpringCloud

一、SpringCloud常见的组件有什么? 1、常见微服务功能架构图 2、阿里巴巴SpringCloud常用组件 注册中心/配置中心:Nacos负载均衡:Ribbon服务调用:Feign服务保护:Sentinel服务网关:Gateway 二、服务注册…

阿里云IoT物联网平台

IoT物联网平台 一、工作原理 1、MQTT(Message Queuing Telemetry Transport) 是一种轻量级的消息传输协议,专门设计用于物联网(IoT)应用中的通信。它是一种发布/订阅(publish/subscribe)模式的…

【OpenCV DNN】Flask 视频监控目标检测教程 04

欢迎关注『OpenCV DNN Youcans』系列,持续更新中 【OpenCV DNN】Flask 视频监控目标检测教程 04 3.4 用Flask构建流媒体服务器3.4.1 流媒体服务器基本知识3.4.2 用Flask搭建流媒体服务器 Flask04 完整例程cvFlask04 项目的文件树cvFlask04.pyindex1.html 本系列从零…

零基础web安全入门学习路线

相信很多新手都会遇到以下几个问题 1.零基础想学渗透怎么入手? 2.学习web渗透需要从哪里开始? 这让很多同学都处于迷茫状态而迟迟不下手,小编就在此贴给大家说一下web渗透的学习路线,希望对大家有帮助 同时本博客也会按照学习路…

【Java EE 初阶】网络编程套接字TCP的实现

目录 1.实现一个TCP的回显服务 1.Sever Socket API 1.SeverSocket 构造方法 2.Sever Socket方法 2.Socket API 1.Socket的构造方法 2.Socket 方法 那么怎么实现让服务器可以处理多个客户端呢? 服务端代码: 客户端代码: 1.实现一个TC…

【Python】玩转lambda表达式

知识目录 一、写在前面✨二、lambda匿名函数三、泛化函数四、总结撒花😊 一、写在前面✨ 大家好!我是初心,又见面了! 今天跟大家分享的文章是 玩转Python中的lambda表达式 ,希望能帮助到大家!本篇文章收录…

三十三、数学知识——质数(朴素筛法 + 埃氏筛法 + 线性筛法)

质数与质数筛法算法主要内容 一、基本思路1、质数质数的判定——试除法(复杂度固定位 O(sqrt(n)) ) 2、分解质因数——试除法(最坏是O(sqrt(n)))3、朴素筛法——筛的是倍数4、埃氏筛法——朴素筛法优化5、线性筛法——n&#xff0…

刷题---C语言

目录 前言: 一.刷题(1) 1.1打印X图案 1.2打印带空格直角三角形图案 1.3小乐乐改数字 1.4牛牛的线段 2.刷题(2) 2.1判断奇偶性 2.2及格分数 2.3kiki算术 2.4(ab-c)*d 2.5KiKi算期末成…

亿级大表拆分过程记录

两年前接手公司的财务系统的开发和维护工作。在系统移交的初期,笔者和团队就发现,系统内有一张5000W的大表。 跟踪代码发现,该表是用于存储资金流水的表格,关联着众多功能点,同时也有众多的下游系统在使用这张表的数据…

Doris-----Aggregate 聚合模型及案例实现

Aggregate 模型 是相同key的数据进行自动聚合的表模型。表中的列按照是否设置了 AggregationType,分为 Key(维度列)和 Value(指标列),没有设置 AggregationType 的称为 Key,设置了 Aggregation…