网络编程之OSI七层协议略析
OSI七层协议


1 物理连接层
用高低电平模拟二进制数0101
2 数据链路层
以太网协议,Ethernet,要求连入网络的计算机必要要有一块网卡,并且规定全球每一块网卡的mac
地址都不一样,用12位十六进制数表示,前六位表示生产厂商,后六位表示流水线号
以太网协议的数据传输部分分为报头和数据部分,报头有18个字节组成,前6个字节为自己的mac地址,
中间6个字节是对方mac地址,后6个字节表示数据类型
以太网协议通信基本靠吼,一台机器想要和另外一台机器通信,同局域网内所有机器都能收到发包,其他
机器收到包后会拆包查看是否是属于自己的包,如果不是则丢弃,如果是则读取数据并回应,如果世界范
围的机器都像这样通信将是一场灾难,这就是广播风暴
知识点:以太网协议通信只能在局域网中,不能跨局域网通信
3 网络层
IP协议,如何实现跨局域网络通信,于是乎诞生了IP协议,IP协议规定了每台计算机都有一个IP地址,
IP协议通信的数据传输部分也分为报头和数据部分,报头占20-60个字节,内部包含了IP版本号、自己
IP,目标IP等等数据,数据部分就是包含以太网协议中的所有内容,长度限制1500字节,超过1500字节的
数据将分片发送,IP分片是没有校验机制的,所有是不可靠传输,所以在传输层的数据尽可能避免到IP层分片
IP协议通信通过网关统一对外局域网进行联系
4 传输层(端口协议)
TCP/UDP协议是基于端口工作的协议
TCP协议遵循3次握手4次挥手原则,每次传输数据需等到对方回应后才会把数据从内存中删除,是一种可靠协议
TCP协议工作原理

port:端口,每台计算机的端口编号由0~65535组成,前1023个端口号由操作系统占用
flask框架默认端口:5000
Django框架默认端口:8000
MySQL数据库默认端口:3306
redis数据库默认端口:6379
在一台计算机上,同一时间同一端口只能有一个应用程序占用
总结:IP能唯一的表示互联网中的某一台计算机,port能唯一的表示一台计算机上的一个应用程序
所以IP+PORT就可以唯一的表示互联网中某台计算机上的某个应用程序
补充:ARP协议的作用:通过IP地址解析MAC地址
5 应用层
HTTP,FTP等协议
网络编程之OSI七层协议略析的更多相关文章
- 网络编程之 OSI七层协议
内容目录: 1.软件开发架构 2.OSI七层协议 3.每层协议介绍 1.软件开发架构 c/s架构: c:客户端 s:服务端 b/s架构: b:浏览器 s:服务器 本质:b/s其实也是c/s 2.OSI ...
- 网络编程之OSI七层协议
七层协议: 应用层 表示层 会话层 传输层 网络层 数据连接层 物理连接层 1.物理连接层: 实现计算机之间物理连接,传输的数据都是010101的二进制 电信号工作原理:电只有高低电频 2.数据链路层 ...
- 网络编程、OSI七层协议
目录 软件开发架构 1.什么是软件开发架构 2.软件开发架构 3.架构优劣势 4.架构发展趋势 网络编程简介 1.如何理解网络编程 2.网络编程的目的 3.网络编程的意义 4.网络编程的起源 5.网络 ...
- Day09: socket网络编程-OSI七层协议,tcp/udp套接字,tcp粘包问题,socketserver
今日内容:socket网络编程 1.OSI七层协议 2.基于tcp协议的套接字通信 3.模拟ssh远程执行命令 4.tcp的粘包问题及解决方案 5.基于udp协议的套接字 ...
- 网络之OSI七层协议模型、TCP/IP四层模型
13.OSI七层模型各层分别有哪些协议及它们的功能 在互联网中实际使用的是TCP/IP参考模型.实际存在的协议主要包括在:物理层.数据链路层.网络层.传输层和应用层.各协议也分别对应这5个层次而已. ...
- 网络框架,互联网的组成,OSI七层协议,抽象层
6.25自我总结 1.网络框架 1.单机 单机游戏 以下两个基于网络的 2.CS架构 cs--->client客户/server服务 服务端(应用程序)一个就够了,客户端(应用程序)可以有多个 ...
- 网络编程网络协议篇(osi七层协议)
一 互联网的本质 咱们先不说互联网是如何通信的(发送数据,文件等),先用一个经典的例子,给大家说明什么是互联网通信. 现在追溯到八九十年代,当时电话刚刚兴起,还没有手机的概念,只是有线电话,那么此时你 ...
- 8.6 day27 网络编程 osi七层协议 Time模块补充知识 TCP协议
Time模块补充知识 date和datetime区别是什么? date 就是年月日 datetime就是年月时时分秒 以下代码为什么会报错? import json from datetime imp ...
- 网络编程之网络架构及其演变过程、互联网与互联网的组成、OSI七层协议、socket抽象层
目录 网络架构及其演变过程 单机架构 CS架构 BS架构 BS架构和CS架构的区别 C/S架构的优缺点: B/S架构的优缺点: 互联网与互联网的组成 互联网的组成(教科书版) 互联网的组成(科普版) ...
随机推荐
- hdoj1905 Pseudoprime numbers (基础数论)
Problem Description Fermat's theorem states that for any prime number p and for any integer a > 1 ...
- rest_framework视图和组件
一.视图 1.基本视图 #基本视图 #抽取基类 from rest_framework.response import Response from rest_framework.views impor ...
- Docker应用
1.tomcat容器创建 docker run -d --name Jdd_tomcat -p 8081:8080 tomcat [root@localhost etc]# docker run - ...
- 微生物组学数据分析工具综述 | 16S+宏基因组+宏病毒组+宏转录组--转载
转载:https://mp.weixin.qq.com/s/xsL9GuLs7b3nRF8VeRtinQ 建立在高通量测序基础上的微生物群落研究,当前主要有三大类:基于16S/18S/ITS等扩增子做 ...
- Vue:(五)axios
Axios是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中.axios主要是用于向后台发起请求的,还有在请求中做更多可控功能.官方不再维护vue-resource,推 ...
- 二: drf视图
Django REST framwork 提供的视图的主要作用: 控制序列化器的执行(检验.保存.转换数据) 控制数据库查询的执行 一:请求与响应 1:request Request 1 REST f ...
- 简单粗暴的上传项目至 Github
嗯,写了一个项目,觉得还OK,就想放在 Github 继续维护和方便使用,那么如何简单快速的将代码上传至 Github 上? 1. 你得有自己的 Github账号,如何创建账号这里就不说了.因为.. ...
- 《F4+2》—基于原型的团队项目需求调研与分析
任务一 1.调研对象 老师和学生 2.所开发的软件原型 太阳系模型软件 3.调研方法 问卷调查法 原型法 任务二 采用UML模型描述任务1所获取的用户需求,如下: 主要需求: 教师:把系统展示给学生, ...
- 一招破解 Java 集合类面试题
今日招式:Java集合类面试题 Java集合类绝对是我们的老朋友了,Java技术江湖里,谁人不知,谁人不晓,它的使用率非常高,使用难度却也不大,这也导致了很多人对它不屑一顾,殊不知其中却暗藏玄机,今天 ...
- springboot添加多数据源 以及 动态添加数据源动态切换数据源
<!-- Druid 数据连接池依赖 --> <dependency> <groupId>com.alibaba</groupId> <artif ...