TPC/IP概述 协议层次及服务模型

2023-11-03 22:40

本文主要是介绍TPC/IP概述 协议层次及服务模型,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在正式学习网络之前,我们务必要明白理解层次的概念

每一层通过模块化来简化精准的完成整个网络的组成构建。

下层协议通过开放一个端口向上层提供给服务。

上层协议调用下层协议端口,享受下层协议的服务。

服务和协议的关系

协议是水平的:协议是标准,在实现本层协议的时候,要借助下层所提供的服务。目的是为了为上层协议服务。本层协议工作必须要借助下层所提供的服务,才能够实现本层的功能,从而为上层服务。

服务是垂直的:在两层相邻层中为上层服务。从而连接上下层。

TCP/IP协议每一层的作用:

每一层数据的单位以及作用和协议举例

应用层:应用报文 message

(作用:在传输层所提供的基础上完成应用报文的交互。实现各种各样的网络应用。)

FTP SMTP HTTP DNS POP3

传输层:报文段;段 segment

(作用:实现端口到端口,进程到进程区分,其中TCP可以弥补网络层的不可靠,实现数据传输的可靠性。不出错,不重复,不丢失,不失序。建立在IP层端到端的服务之上。)

TCP

UDP

网络层:分组;包  packet (如果是五连接方式数据报datagram)

END TO END (ETE)

(作用:两台主机之间会有很多跳。实现源主机到目标主机,端到端通讯。路由转发和寻址,可以有很多的端,建立在数据链路层点到点的服务之上。但是是尽力而为。)

RIP  IGRP ISIS OSPF BGP  EIGRP 

数据链路层:数据帧  (frame)

POINT TO POINT (PTP)

(作用:实现一条链路上相邻两点的数据帧传输,识别数据帧头,剥离后将后面的数据交给上层)

802.3 以太网 协议

PPP 协议

802.11 WLAN 协议

物理层:位;比特  (bit)

(作用:将数据链路层传输下来的数据帧转化成比特流,以光电信号的方式,通过网线或者光纤等介质在链路传输,反之对端物理层也可以还原)

概述:

怎么样设计实施组织一个复杂的网络

把他分成一个个功能明确的层次,每一个层次实现一个或一组功能。

具体实现的时候采用协议实体的相互动作来实现

每一层借助于层间的接口,借助下层所提供的服务来相互交换PDU来实现

实现PDU协议动作的目的是为了上层提供更好的服务,每一层向上层提供的服务包括了所有下层向上所提供的服务总和,还包括了本层和对等层的实体交互的过程所形成的一些新的服务特性。通过层间的接口来向上提供服务,否则本层失去了意义。 

服务:

服务用户:TCP的实体上可以跑很多协议。http ftp等等

服务访问点:SAP是向上层提供服务的一个节点,服务访问点通过socket来判断这个数据是发给谁的。

套节字socket:传输层向应用层传递时信息,承接SAP,区分哪个端口号的服务(socket可以包含源目地址已经源目端口号这样一个四元组的集合)

两个实体对等体向上层提供服务,通过下层所提供的服务,两个实体可以交互PDU,可以向上层服务。

 下层实体向上层提供服务的时候分为两种形式

如果先要建立关系,就是面向连接的服务

反之则是无连接服务

数据单元(DU) 协议数据单元(PDU)

上层传下来的数据叫做SDU(服务数据单元),SDU+控制信息传输给下层(ICI)。

协议数据单元(PDU):   SDU+本层控制信息(需要和对端交互的信息),形成本层的控制信息,形成PDU(协议数据单元),(我和对等层的实体交互的时候都是通过PDU交换的),如果sud刚好则封上自己的控制头部,形成PDU,如果SDU较小则组合,组合部分前装入控制头部;太大则切片,每个切片前装入控制头部。

简单描述下两台主机 pc1和pc2之间的通讯过程

1.PC1将应用层的数据载荷传输给交换机

其中数据中包含了对应的应用服务类型,源目端口号 ,源目IP地址 ,源目MAC地址

2.SW1在收到数据帧后拆开数据链路层的头部,并且查询MAC地址表做对应的转发,且转化为bit流交给物理层以光电信号的形式在介质上传输。

3.R1收到数据后,首先会通过自己的网口对其数据链路层的头部进行拆包,再会拆开三层,查询路由表做对应的转发。传递给R1的数据链路层,会从重发封装上自己的MAC地址,即数据链路层头部,并且重新转化为光电信号。

4.SW2做SW1同样的工作

5.PC2在收到光电信号后,首先通过物理层转化为bit流还原成数据帧,在通过数据链路层检查是否是自己对应的数据帧后拆开数据帧头部分,发送给自己的网络层,网络层同样拆开对应的数据包,将传输层数据内容传输给传输层,传输层通过socket来判断对应的端口号,转发给对应的应用。

这篇关于TPC/IP概述 协议层次及服务模型的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/341346

相关文章

Spring LDAP目录服务的使用示例

《SpringLDAP目录服务的使用示例》本文主要介绍了SpringLDAP目录服务的使用示例... 目录引言一、Spring LDAP基础二、LdapTemplate详解三、LDAP对象映射四、基本LDAP操作4.1 查询操作4.2 添加操作4.3 修改操作4.4 删除操作五、认证与授权六、高级特性与最佳

Nginx中配置HTTP/2协议的详细指南

《Nginx中配置HTTP/2协议的详细指南》HTTP/2是HTTP协议的下一代版本,旨在提高性能、减少延迟并优化现代网络环境中的通信效率,本文将为大家介绍Nginx配置HTTP/2协议想详细步骤,需... 目录一、HTTP/2 协议概述1.HTTP/22. HTTP/2 的核心特性3. HTTP/2 的优

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA

关于WebSocket协议状态码解析

《关于WebSocket协议状态码解析》:本文主要介绍关于WebSocket协议状态码的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录WebSocket协议状态码解析1. 引言2. WebSocket协议状态码概述3. WebSocket协议状态码详解3

Java的IO模型、Netty原理解析

《Java的IO模型、Netty原理解析》Java的I/O是以流的方式进行数据输入输出的,Java的类库涉及很多领域的IO内容:标准的输入输出,文件的操作、网络上的数据传输流、字符串流、对象流等,这篇... 目录1.什么是IO2.同步与异步、阻塞与非阻塞3.三种IO模型BIO(blocking I/O)NI

基于Flask框架添加多个AI模型的API并进行交互

《基于Flask框架添加多个AI模型的API并进行交互》:本文主要介绍如何基于Flask框架开发AI模型API管理系统,允许用户添加、删除不同AI模型的API密钥,感兴趣的可以了解下... 目录1. 概述2. 后端代码说明2.1 依赖库导入2.2 应用初始化2.3 API 存储字典2.4 路由函数2.5 应

Linux上设置Ollama服务配置(常用环境变量)

《Linux上设置Ollama服务配置(常用环境变量)》本文主要介绍了Linux上设置Ollama服务配置(常用环境变量),Ollama提供了多种环境变量供配置,如调试模式、模型目录等,下面就来介绍一... 目录在 linux 上设置环境变量配置 OllamPOgxSRJfa手动安装安装特定版本查看日志在

SpringCloud之LoadBalancer负载均衡服务调用过程

《SpringCloud之LoadBalancer负载均衡服务调用过程》:本文主要介绍SpringCloud之LoadBalancer负载均衡服务调用过程,具有很好的参考价值,希望对大家有所帮助,... 目录前言一、LoadBalancer是什么?二、使用步骤1、启动consul2、客户端加入依赖3、以服务

Linux系统中配置静态IP地址的详细步骤

《Linux系统中配置静态IP地址的详细步骤》本文详细介绍了在Linux系统中配置静态IP地址的五个步骤,包括打开终端、编辑网络配置文件、配置IP地址、保存并重启网络服务,这对于系统管理员和新手都极具... 目录步骤一:打开终端步骤二:编辑网络配置文件步骤三:配置静态IP地址步骤四:保存并关闭文件步骤五:重

Linux配置IP地址的三种实现方式

《Linux配置IP地址的三种实现方式》:本文主要介绍Linux配置IP地址的三种实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录环境RedHat9第一种安装 直接配置网卡文件第二种方式 nmcli(Networkmanager command-line