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七层协议略析的更多相关文章

  1. 网络编程之 OSI七层协议

    内容目录: 1.软件开发架构 2.OSI七层协议 3.每层协议介绍 1.软件开发架构 c/s架构: c:客户端 s:服务端 b/s架构: b:浏览器 s:服务器 本质:b/s其实也是c/s 2.OSI ...

  2. 网络编程之OSI七层协议

    七层协议: 应用层 表示层 会话层 传输层 网络层 数据连接层 物理连接层 1.物理连接层: 实现计算机之间物理连接,传输的数据都是010101的二进制 电信号工作原理:电只有高低电频 2.数据链路层 ...

  3. 网络编程、OSI七层协议

    目录 软件开发架构 1.什么是软件开发架构 2.软件开发架构 3.架构优劣势 4.架构发展趋势 网络编程简介 1.如何理解网络编程 2.网络编程的目的 3.网络编程的意义 4.网络编程的起源 5.网络 ...

  4. Day09: socket网络编程-OSI七层协议,tcp/udp套接字,tcp粘包问题,socketserver

    今日内容:socket网络编程    1.OSI七层协议    2.基于tcp协议的套接字通信    3.模拟ssh远程执行命令    4.tcp的粘包问题及解决方案    5.基于udp协议的套接字 ...

  5. 网络之OSI七层协议模型、TCP/IP四层模型

    13.OSI七层模型各层分别有哪些协议及它们的功能 在互联网中实际使用的是TCP/IP参考模型.实际存在的协议主要包括在:物理层.数据链路层.网络层.传输层和应用层.各协议也分别对应这5个层次而已. ...

  6. 网络框架,互联网的组成,OSI七层协议,抽象层

    6.25自我总结 1.网络框架 1.单机 单机游戏 以下两个基于网络的 2.CS架构 cs--->client客户/server服务 服务端(应用程序)一个就够了,客户端(应用程序)可以有多个 ...

  7. 网络编程网络协议篇(osi七层协议)

    一 互联网的本质 咱们先不说互联网是如何通信的(发送数据,文件等),先用一个经典的例子,给大家说明什么是互联网通信. 现在追溯到八九十年代,当时电话刚刚兴起,还没有手机的概念,只是有线电话,那么此时你 ...

  8. 8.6 day27 网络编程 osi七层协议 Time模块补充知识 TCP协议

    Time模块补充知识 date和datetime区别是什么? date 就是年月日 datetime就是年月时时分秒 以下代码为什么会报错? import json from datetime imp ...

  9. 网络编程之网络架构及其演变过程、互联网与互联网的组成、OSI七层协议、socket抽象层

    目录 网络架构及其演变过程 单机架构 CS架构 BS架构 BS架构和CS架构的区别 C/S架构的优缺点: B/S架构的优缺点: 互联网与互联网的组成 互联网的组成(教科书版) 互联网的组成(科普版) ...

随机推荐

  1. element-ui checkbox传默认值的问题

    新入职一家公司了,准备把项目中遇到的问题随时记录下来.以前遇到的问题解决了没有记录,导致面试的时候问项目中遇到那些问题时,好多都忘了. 今天记录一下element-ui 的 checkbox 传递默认 ...

  2. Python新手入门英文词汇(1-1)

    英文词汇总结一.交互式环境与print输出 1.print:打印/输出2.coding:编码3.syntax:语法4.error:错误5.invalid:无效6.identifier:名称/标识符7. ...

  3. pip使用豆瓣的镜像源

    豆瓣镜像地址:https://pypi.douban.com/simple/ 虽然用easy_install和pip来安装第三方库很方便 它们的原理其实就是从Python的官方源pypi.python ...

  4. yum downloadonly模式,保存所需软件及其依赖包

    command: sudo yum install --downloadonly --downloaddir='yourderictory'

  5. TCP协议三次握手、四次挥手

    TCP的概述 TCP 把连接作为最基本的对象,每一条 TCP 连接都有两个端点,这种断点我们叫作套接字(socket),它的定义为端口号拼接到 IP 地址即构成了套接字,例如,若 IP 地址为 192 ...

  6. Linux 命令行下导入导出 .sql 文件

    一.导出数据库用的是 mysqldump 命令 1.导出数据和表结构 /usr/bin/mysqldump -u 用户名 -p 数据库名 > 数据库名.sql 敲回车键后会提示输入密码 注意 m ...

  7. 【八】jqeury之click事件[添加及删除数据]

    要求:1.添加数据显示在下方列表.2.添加的数据可动态删除. 界面显示: 代码: <!DOCTYPE html> <html> <head> <script ...

  8. Asp.net core 学习笔记 ( Data protection )

    参考 : http://www.cnblogs.com/xishuai/p/aspnet-5-identity-part-one.html http://cnblogs.com/xishuai/p/a ...

  9. 安卓下设置系统字体大小影响H5页面布局

    问题描述: 调整好的h5页面,放在安卓app内嵌页面后布局正常,后来用户调整系统里面字体大小,后内嵌H5布局乱掉 问题分析: 因为用户调整了系统字体的大小,修改了根节点和body节点的font-siz ...

  10. python 利用selectors实现异步I/O

    它的功能与linux的epoll,还是select模块,poll等类似:实现高效的I/O multiplexing,  常用于非阻塞的socket的编程中: 简单介绍一下这个模块,更多内容查看 pyt ...