OSI七层模型和TCP/IP模型简述

OSI模型

OSI模型,即开放式通信系统互联参考模型(Open System Interconnection Reference Model),是国际标准化组织(ISO)提出的一个试图使各种计算机在世界范围内互连为网络的标准框架,简称OSI。该模型共有7层,实际应用以TCP/IP模型为主,而OSI模型层级分明,便于学习理解。

OSI各层级结构简述:

物理层(Physical Layer)

物理层是OSI分层结构体系中最重要、最基础的一层,它建立在传输媒介基础上,起建立、维护和取消物理连接作用,实现设备之间的物理接口。物理层之接收和发送一串比特(bit)流,不考虑信息的意义和信息结构。

数据链路层(Data Link Layer)

在物理层提供比特流服务的基础上,将比特信息封装成数据帧Frame,起到在物理层上建立、撤销、标识逻辑链接和链路复用以及差错校验等功能。通过使用接收系统的硬件地址或物理地址来寻址。建立相邻结点之间的数据链路,通过差错控制提供数据帧(Frame)在信道上无差错的传输,同时为其上面的网络层提供有效的服务。

网络层(Network Layer)

网络层也称通信子网层,是高层协议之间的界面层,用于控制通信子网的操作,是通信子网与资源子网的接口。在计算机网络中进行通信的两个计算机之间可能会经过很多个数据链路,也可能还要经过很多通信子网。

传输层(Transport Layer)

传输层建立在网络层和会话层之间,实质上它是网络体系结构中高低层之间衔接的一个接口层。用一个寻址机制来标识一个特定的应用程序(端口号)。传输层不仅是一个单独的结构层,它还是整个分层体系协议的核心,没有传输层整个分层协议就没有意义。

会话层(Session Layer)

在会话层及以上的高层次中,数据传送的单位不再另外命名,统称为报文。会话层不参与具体的传输,它提供包括访问验证和会话管理在内的建立和维护应用之间通信的机制。如服务器验证用户登录便是由会话层完成的。

表示层(Presentation Layer)

表示层向上对应用层提供服务,向下接收来自会话层的服务。表示层是为在应用过程之间传送的信息提供表示方法的服务,它关心的只是发出信息的语法与语义。表示层要完成某些特定的功能,主要有不同数据编码格式的转换,提供数据压缩、解压缩服务,对数据进行加密、解密。例如图像格式的显示,就是由位于表示层的协议来支持。

应用层(Application Layer)

网络应用层是通信用户之间的窗口,为用户提供网络管理、文件传输、事务处理等服务。其中包含了若干个独立的、用户通用的服务协议模块。网络应用层是OSI的最高层,为网络用户之间的通信提供专用的程序。

TCP/IP模型

TCP/IP是一组用于实现网络互连的通信协议。Internet网络体系结构以TCP/IP为核心。基于TCP/IP的参考模型将协议分成四个层次,它们分别是:网络访问层、网际互联层、传输层(主机到主机)、和应用层。

模型比较:

共同点:

(1)OSI参考模型和TCP/IP参考模型都采用了层次结构的概念。

(2)都能够提供面向连接和无连接两种通信服务机制。

不同点:

(1)OSI采用的七层模型,而TCP/IP是四层结构。

(2)TCP/IP参考模型的网络接口层实际上并没有真正的定义,只是一些概念性的描述。而OSI参考模型不仅分了两层,而且每一层的功能都很详尽,甚至在数据链路层又分出一个介质访问子层,专门解决局域网的共享介质问题。

(3)OSI模型是在协议开发前设计的,具有通用性。TCP/IP是先有协议集然后建立模型,不适用于非TCP/IP网络。

(4)OSI参考模型与TCP/IP参考模型的传输层功能基本相似,都是负责为用户提供真正的端对端的通信服务,也对高层屏蔽了底层网络的实现细节。所不同的是TCP/IP参考模型的传输层是建立在网络互联层基础之上的,而网络互联层只提供无连接的网络服务,所以面向连接的功能完全在TCP协议中实现,当然TCP/IP的传输层还提供无连接的服务,如UDP;相反OSI参考模型的传输层是建立在网络层基础之上的,网络层既提供面向连接的服务,又提供无连接的服务,但传输层只提供面向连接的服务。

(5)OSI参考模型的抽象能力高,适合与描述各种网络;而TCP/IP是先有了协议,才制定TCP/IP模型的。

(6)OSI参考模型的概念划分清晰,但过于复杂;而TCP/IP参考模型在服务、接口和协议的 区别上不清楚,功能描述和实现细节混在一起。

(7)TCP/IP参考模型的网络接口层并不是真正的一层;OSI参考模型的缺点是层次过多,划分意义不大但增加了复杂性。

(8)OSI参考模型虽然被看好,由于没把握好时机,技术不成熟,实现困难;相反,TCP/IP参考模型虽然有许多不尽人意的地方,但还是比较成功的。

iproute家族命令

iproute是linux下的网络配置工具,用来实现对路由表,路由策略,网卡设备以及网络信道的管理和查看操作。其家族命令有ip,address,route以及ss等常用操作。

ip命令

用来查看管理路由,设备,策略路由以及信道等信息。

使用方法:ip  OBJECT { COMMAND | help }

OBJECT := { link | addr | route | netns }

ip link  配置网络设备

ip link set  用来设置以下选项:

dev NAME (default):指明要管理的设备,dev关键字可省略;

up和down:

multicast on或multicast off:启用或禁用多播功能;

name NAME:重命名接口

mtu NUMBER:设置MTU的大小,默认为1500;

netns PID:ns为namespace,用于将接口移动到指定的网络名称空间;[root@localhost ~]# ip link set dev eno16777736 up    开启指定的网卡

[root@localhost ~]# ip link set dev eno16777736 name eth0    修改网卡名称

ip link show    显示网卡属性

ip netns    管理网络命名空间

ip netns help查看帮助。

ip  netns  list:列出所有的netns

ip  netns  add  NAME:创建指定的netns

ip  netns  del  NAME:删除指定的netns

ip  netns  exec  NAME  COMMAND:在指定的netns中运行命令

ip address 命令

用来管理网络接口的IP地址,可以给指定接口分配多个IP地址。

ip address add/delete     添加或删除IP地址

ip address show  查看配置的IP地址

ip address flush   清空某接口的配置的所有IP地址示例:

# ip addr add 192.168.1.176/24 dev eth0

# ip addr add 192.168.1.177/24 dev eth0

# ip addr list         可以看到上面配置的eth0有两个IP

ip route命令

用来管理本地的路由表。

用法:

ip route add - add new route

ip route change - change route

ip route replace - change or add new one

ip route show - list routes

ip route flush - flush routing tables清空路由表

ip route get - get a single route查看某个单条路由

示例:

删除默认路由

添加路由信息

ss命令

网络状态查看工具,类似netstat

ss [options] [ FILTER ]

选项:

-t:TCP协议的相关连接

-u:UDP相关的连接

-w:raw socket相关的连接

-l:监听状态的连接

-a:所有状态的连接

-n:数字格式

-p:相关的程序及其PID

-e:扩展格式信息

-m:内存用量

-o:计时器信息

FILTER := [ state STATE-FILTER ] [ EXPRESSION ] 过滤器

常用组合:-tan,-tanl,-tanlp,-uan

示例:

查看所有的TCP连接并以数字显示

分别以指定状态的形式或者指定端口的形式查看所有的TCP连接状态

进程管理工具

linux拥有众多的进程监控和管理的工具,包括pstree, ps, pidof, pgrep, top, htop, glances, pmap, vmstat, dstat, kill, pkill, job, bg, fg, nohup, nice, renice, killall等工具。

进程查看工具:

pstree       查看进程树

ps  查看当前进程状态,常用组合aux,-ef,-eFH,-eo,axo

top命令:动态查看进程信息

%CPU说明:

us:用户空间进程占比

sy:内核空间占比,二者比例7:3

ni:nice时间

id:空闲

wa:等待IO完成的时间

hi:硬件中断处理

si:软件中断处理所占比

st:虚拟化程序占用CPU百分比

排序:

P:以占据CPU百分比排序;

M:以占据内存百分比排序;

T:累积占用CPU时间排序;

进程管理类命令:

htop命令:类似top的一个工具,比top功能更强大,更人性化。

htop工具运行界面

选项:

-d #:指定延迟时间间隔;

-u UserName:仅显示指定用户的进程;

-s COLUME:以指定字段进行排序;

在打开界面中执行的部分命令,按F1查看帮助:

l:显示选定的进程打开的文件列表;

s:跟踪选定的进程的系统调用;

t:以层级关系显示各进程状态;F5亦可

a:将选定的进程绑定至某指定的CPU核心;

vmstat命令:报告虚拟内存的统计数据

输出内容说明:

procs:即process,显示running和blocking状态的进程个数

memory:物理内存使用情况

swap:交换分区使用情况

io:数据块的写入和读出速率

system:系统相关的速率信息

cpu:各种情形下的CPU利用率

glances  跨平台监控工具

h命令获取帮助

常用命令:

-b:以Byte为单位显示网上数据速率;

-d:关闭磁盘I/O模块;

-m:关闭mount模块;

-n:关闭network模块;

-t #:刷新时间间隔;

-1:每个cpu的相关数据单独显示;

-o {HTML|CSV}:输出格式;

-f  /PATH/TO/SOMEDIR:设定输出文件的保存目录

dstat命令:

一款多功能的工具,用来生成对系统资源的统计信息。

常用选项:

-c, --cpu:显示cpu相关信息;

-d, --disk:显示磁盘的相关信息

-g:显示page相关的速率数据;

-m:Memory的相关统计数据

-n:Interface的相关统计数据;

-p:显示process的相关统计数据;

-r:显示io请求的相关的统计数据;

-s:显示swapped的相关统计数据;

until和while循环使用举例

使用until和while分别实现192.168.1.0/24网段内,地址是否能够ping通,弱ping通则输出"success!",若ping不通则输出"fail!"。

说明:上述网段有效地址范围是192.168.1.1-254,用while控制外层循环,测试ping的结果,在用选择执行输出两种结果。

while实现

测试结果

until实现

测试结果

linux进程及网络报告,linux网络和进程管理简述相关推荐

  1. linux系统进程控制实验报告,Linux进程控制实验报告.doc

    里奴性进程控制实验报告 实验名称: Linux进程控制 实验要求:一.编写一个Linux系统C程序,由父亲创建2个子进程,再由子进程各自从控制台接收一串字符串,保存在各自的全局字符串变量中,然后正常结 ...

  2. Linux重要进程负载情况报告,Linux进程与性能监控

    系统性能监控相关命令 1.vmstat命令 Report virtual memory statistics,报告虚拟内存的统计数据. 常用选项:# #:vmstat后面直接给出数字第一个数字表示每隔 ...

  3. linux实验实训报告,linux实验实训报告.doc

    linux实验实训报告.doc 内蒙古商贸职业学院计算机系 学 生 校 内 实 验 实 训 报 告 2011--2012学年 第二学期 系部:计算机系 课程名称:Linux网络环境管理 专业班级: 内 ...

  4. linux使用环境实验报告,Linux 及其使用环境实验报告.doc

    计算机语言与程序设计上机实验报告 学号: 姓名: 所在系: 班级: 实验名称: 实验1 Linux 及其使用环境 实验日期 实验指导教师 实验机房及机号 ----------------------- ...

  5. 熟悉linux操作系统的使用实验报告,Linux系统的熟悉与使用操作系统实验报告

    Linux系统的熟悉与使用操作系统实验报告 实验一 Linux系统熟悉与使用 Linux有两种不同的含义.从严格的技术定义讲,Linux指的是开放源代码的Unix类操作系统的内核.然而,目前大多数人用 ...

  6. 实验四 linux进程控制实验报告,Linux系统进程控制操作系统实验报告4

    实验课程名称:操作系统 实验项目名称Linux系统进程控制实验成绩 实验者专业班级组别 同组者实验日期年月日第一部分:实验分析与设计(可加页) 实验内容描述(问题域描述) 要求:掌握Linux系统中进 ...

  7. linux dhcp配置实验报告,Linux DHCP服务器配置实验报告.doc

    实验一 DHCP服务器配置 实验课程名:Red Hat Enterprise Linux系统管理 专业班级: 学号: 姓名: 实验时间: 实验地点: 指导教师: 一.实验目的 (1) 掌握Linux下 ...

  8. linux信号处理编程实验报告,Linux编程之信号处理

    信号是类Unix系统中的一种通知机制.在Linux下,我们可以通过kill -l命令来查看有哪些信号.Linux下有64个信号,其中前32个信号是经典信号,后32个是用于驱动开发要用到的. 那么信号是 ...

  9. linux文件目录操作实验报告,Linux操作系统实验4文件和目录操作

    <Linux操作系统>课程实验报告 实验4 文件和目录操作 一.实验目的 1.理解Linux文件系统的结构和目录组织方式: 2.掌握Linux常用目录和文件命令的使用. 二.实验内容与要求 ...

最新文章

  1. Dockerfile 入门看这篇就够了
  2. szu 寒训 day#3 ST表 和 LCA问题 附例题 菜鸡解法
  3. Swift使用iconfont图标
  4. 聚焦2020年财报:进击的恒大汽车,“变态”的智能汽车
  5. 新版gitbook导出pdf
  6. jQuery必知要点(一)
  7. android网络转圈,android基于dialog加载时转圈圈很好的demo
  8. python爬虫数据可视化_适用于Python入门者的爬虫和数据可视化案例
  9. 使用过的MySql查询语句[待续...]
  10. python将一组数据转化为列表_Pandas将列表(List)转换为数据框(Dataframe)
  11. js键盘相关知识总结
  12. iso是什么意思/iso9001质量管理体系认证有哪些标准
  13. 魅族手机在开发调试中无法打印log的解决方法
  14. 如何在手机浏览器中实现条形码/QR码扫描
  15. [转]c# 语音卡控制--语音卡电话呼叫系统
  16. 上座部佛教的佛陀略传
  17. 如何用将top命令的结果写入txt?
  18. mongo3.5 java cursor_pymongo for py2.7.py3.6版本-pymongo下载3.5.1 官方最新版-西西软件下载...
  19. 2023年全国最新会计专业技术资格精选真题及答案5
  20. ali druid 自定义filter

热门文章

  1. 数据中心与云数据中心
  2. iPhone11启动全线降价;瑞幸自曝22亿造假,股价暴跌75%;会议软件 Zoom 陷信任危机 | EA周报...
  3. boss直聘__zp_stoken__逆向分析2021.10版
  4. 爬取大众点评页面数据教程,图片文字如何爬取
  5. Oracle如何清除一个用户下的所有表
  6. 领略千变万化的Android Drawable (二)
  7. 微信开放平台与公众平台授权区别
  8. 数据大屏可视化-highcharts-3D实心饼图
  9. 简单理解锁存器和触发器的主要区别
  10. cad中tk什么意思_原来CAD里的这些缩写是这个意思!终于搞懂了对象捕捉这个玩意儿...