目录

1.网络开发的两大架构

2.网络概念

3.OSI七层模型

4.ARP协议

5.TCP三次握手和四次挥手

1.网络开发的两大架构

1.没有网络的时候,文件是如何传输的?

早期没有网络 a.py -> b.py 借助c文件中转

a文件把数据放在c文件中,b文件从c文件取

b文件把数据放在c文件中,a文件从c文件取

构成了早期的一种数据的交互原理 -> socket(套接字)模型

socket(套接字)是收发数据的一个工具

2.后来有了网络了,文件是如何传输的?

后来有了网络

a文件中的数据,可以通过网络协议,转成10101电信号,进行发送

a文件借助socket发送数据

b文件借助socket接受数据

3.网络开发的两大架构:C/S架构和B/S架构

C/S 架构 : Client/Server

C -> Client 客户端

具体制定是一个软件,像qq,微信,腾讯会议,dnf,wow,跑跑卡丁车,龙与地下城ddo,消消乐,劲舞团,英雄联盟

S -> Server 服务端

天河三号 百亿亿次超级计算机

B/S 架构:Browser/Server

B -> Brower 浏览器

通过输入网址,直接访问对方服务器,对方服务器响应请求之后

把对应的数据通过网络返回到浏览器中进行显示

S -> Server 服务端

B/S和C/S 谁代表着未来?

当然是B/S!!!原因有如下两点:

  (1) 省去复杂漫长的下载和安装环节,节省了手机和电脑的硬盘空间

  (2) 因为手机的便捷性,可以随时随地不受限制的使用各式各样的功能,满足日常需求.

2.网络概念

1.查看一台主机的IP地址

在Windows系统下:ipconfig

在Linux系统下:ifconfig

ip地址的最后一位0或者255 两个数字不能用

一般最后一位0表达的是网段,255代表广播地址

2.什么是网段?

网段的作用:

  主要用来划分同一区域里的某些机器是否能够互相通信。

  在一个网段里可以不通过因特网,直接对话

如何判别是否在同一网段?:

  如果IP地址和子网掩码相与得到的值相同就是同一网段

子网掩码:用来区分网段和主机

检测两个IP是否可以互相通信:

3.端口

1.端口的范围:0-65535

2.ip + 端口 可以访问这个世界上任何一台电脑里面的任何一个应用

3.常见的端口号(需要背下来):

20 端口:FTP 文件传输协议(默认数据口)

21 端口:FTP 文件传输协议(控制)

22 端口:SSH 远程登录协议

25 端口:SMTP 服务器所开放的端口,用于发送邮件

80 端口:http,用于网页浏览,木马 Executor 开放此端口

443 端口:基于 TLS/SSL 的网页浏览端口,能提供加密和通过安全端口传输的另一种 HTTP

3306 端口:MySQL 开放此端口

4.自定义端口需要注意:自定义端口的时候起一个9000以后的端口号,不要乱用已知的端口号

3.OSI七层模型

1.应用层(应用层,表示层,会话层)

  封装数据

  根据不同的协议,封装成对应格式的数据消息

    HTTP [超文本传输协议]

    HTTPS [加密传输的超文本传输协议]

    FTP [文件传输协议]

    SMTP [电子邮件传输协议]

2.传输层:

  封装端口

  指定传输的协议(TCP协议/UDP协议)

3.网络层:

  封装ip地址

  版本ipv4 ipv6

4.数据链路层:

  封装mac地址

  指定链路层协议arp(ip->mac) / rarp (mac->ip)

5.物理层:

  打成数据包,变成二进制的字节流,通过网络进行传输

交换机:从下到上拆2层,物理层,链路层

路由器:从下到上拆3层,物理层,链路层,网络层

4.ARP协议

1.ARP协议由来

arp协议由来:计算机通信基本靠吼,即广播的方式,所有上层的包到最后都要封装上以太网头,然后通过以太网协议发送

在谈及以太网协议时候,我们了解到通信是基于mac的广播方式实现,计算机在发包时,获取自身的mac是容易的,如何获取目标主机的mac,就需要通过arp协议

2.ARP协议功能

广播的方式发送数据包,获取目标主机的mac地址

3.ARP协议实现过程

协议工作方式:每台主机ip都是已知的

例如:主机172.16.10.10/24访问172.16.10.11/24

1.首先通过ip地址和子网掩码区分出自己所处的子网

场景 数据包地址
同一子网 目标主机mac,目标主机ip
不同子网 网关mac,目标主机ip

2.分析172.16.10.10/24与172.16.10.11/24处于同一网络(如果不是同一网络,那么下表中目标ip为172.16.10.1,通过arp获取的是网关的mac)

  源mac 目标mac 源ip 目标ip 数据部分
发送端主机 发送端mac FF:FF:FF:FF:FF:FF 172.16.10.10/24 172.16.10.11/24 数据

3.这个包会以广播的方式在发送端所处的自网内传输,所有主机接收后拆开包,发现目标ip为自己的,就响应,返回自己的mac.

4.ARP协议实现原理

电脑a先发送arp的广播包,把mac标记成全FF-FF-FF-FF-FF-FF的广播地址

交换机接收到arp广播包,从下到上拆2层,到数据链路层得到mac发现mac是全F的广播地址,重新打包,.

交换机开始广播,所有连接在这台交换的的设备统一都会受到arp广播包,开始拆包

如果对应的是全F广播地址,直接跳过,继续向上找,如果ip不对,直接舍弃

路由器允许从下到上拆3层,拆到网络层,得到ip,找到其中的网段

重新把数据打包,发送给对应这个网段的那个接口(网关)

对应的接口设备是交换机,从下到上拆2层,全F广播地址,开始发送arp广播包

数据库服务器接收到arp广播包开始拆包,发现要找的机器就是自己

于是把自己的ip->mac的对照数据,返回给对应的交换机

交换机开始单播,让ip->mac的对照数据返回到开始处

原主机接收到了ip->mac的对照关系之后,更新一下自己的arp的解析表,方便下次使用

到此结束.

5.TCP三次握手和四次挥手

1.三种状态

SYN 创建连接

ACK 确认响应

FIN 断开连接

2.TCP三次握手和四次挥手图

3.关于三次握手和四次挥手阐述

三次握手

  客户端发送一个请求,与服务端建立连接

  服务端接受请求,发出响应,并且回应也要与客户端建立连接

  (服务端同意连接的请求 和 服务端与客户端建立连接的请求在一次响应当中完成了)

  客户端接受服务端的请求之后,把消息在回复响应给服务端.

数据传输

  客户端每次发送数据时,服务端每次都有响应,发一个回执消息来确认数据

  所以tcp协议,发送数据不丢包.保证数据稳定.

四次挥手

  客户端向服务端发送一个断开连接的请求

  (代表客户端已经没有数据可以传输了)

  服务端接受请求,发出响应

  等到服务端把所有数据发送或者接受完毕之后

  服务端向客户端发送断开连接的请求

  客户端接受请求,并且发出响应(持续2MSL)

  等待2msl,最大报文生存时间之后

  客户端与服务端彻底断开连接.

day29:计算机网络概念的更多相关文章

  1. tcp/ip协议学习笔记一

    一. 简述 以前在学校学习计算机网络的时候学习多是网络7层模型OSI,了解了一些基本的计算机网络概念和协议通信格式,但是一直没弄明白其中的原理,包括各层之间的关系,应用,还有一些常见的令牌环网到底是什 ...

  2. CompTIA Security+ 常见知识点

    前言: Security+ 认证是一种中立第三方认证,其发证机构为美国计算机行业协会CompTIA: 是和CISSP.CISA等共同包含在内的国际IT业热门认证之一,和CISSP偏重信息安全管理相比, ...

  3. 利用三层交换机实现VLAN间路由(计算机网络中速率、带宽、吞吐量的概念)

    1.速率 速率是指计算机网络中的主机在数字信道上,单位时间内从一端传送到另一端的数据量,即数据传输率,也称数据率或比特率.比特(bit)是数据量的最小单位,s(秒)是时间的最小单位.所以速率单位为bi ...

  4. 以QQ举例 说明计算机网络中的一些概念区别(TCP与UDP,广播与单播)

    QQ 中的 广播与单播 今天简单地学习了一下 广播和多播(组播) 的知识.关于 单播和多播 的概念,可以用 QQ 中的一些例子来解释. 单播,就像 两个人聊QQ 一样,信息的接收和传递只在两个节点之间 ...

  5. 计算机网络历史与基本概念&分层与参考模型(TCP/IP与OSI)&通信过程

    Definition: 计算机网络:使用单一技术相互连接的自主计算机的互联集合. 单台计算机独立自主(不受制于其他计算机),连接介质可以使光纤.铜线也可以是微波.红外.卫星. 互联网络(Interne ...

  6. 一篇故事讲述了计算机网络里的基本概念:网关,DHCP,IP寻址,ARP欺骗,路由,DDOS等...

    计算机主机网关的作用是什么? 假设你的名字叫小不点,你住在一个大院子里,你的邻居有很多小伙伴,在门口传达室还有个看大门的李大爷,李大爷就是你的网关.当你想跟院子里的某个小伙伴玩,只要你在院子里大喊一声 ...

  7. 【计算机网络基础】TCP/IP、HTTP、Socket的概念

    TCP/IP协议是一个协议簇.里面包括很多协议的.UDP也是其中的一个.之所以命名为TCP/IP协议,因为TCP,IP协议是两个很重要的协议,就用他两命名了.(资料来源: http://www.cnb ...

  8. 网络基本概念备忘:MAC地址,端口,HTTP状态码

    MAC地址 英文MAC Address 英文全称: Media Access Control Address 别称:硬件位址 用途:定义网络设备位置 表示:十六进制数,6 Byte 特点:产品出产后M ...

  9. 牛人整理分享的面试知识:操作系统、计算机网络、设计模式、Linux编程,数据结构总结 转载

    基础篇:操作系统.计算机网络.设计模式 一:操作系统 1. 进程的有哪几种状态,状态转换图,及导致转换的事件. 2. 进程与线程的区别. 3. 进程通信的几种方式. 4. 线程同步几种方式.(一定要会 ...

  10. 计算机网络(7)-----TCP协议概述

    传输控制协议(Transmission Control Protocol) 概念 一种面向连接的.可靠的.基于字节流的传输层通信协议,由IETF的RFC 793定义.在简化的计算机网络OSI模型中,它 ...

随机推荐

  1. PTA一元多项式的乘法与加法运算 另一种算法

    设计函数分别求两个一元多项式的乘积与和. 输入格式: 输入分2行,每行分别先给出多项式非零项的个数,再以指数递降方式输入一个多项式非零项系数和指数(绝对值均为不超过1000的整数).数字间以空格分隔. ...

  2. Verilog 变量声明与数据类型二

    Verilog 变量声明与数据类型二 上节介绍了wire,reg数据类型及其用法,并对变量定义中的向量的定义及使用做了说明.本节主要介绍其它几种类型.常用的有如下几种:整数integer,实数 rea ...

  3. 使用idea从零编写SpringCloud项目-Hystrix

    ps:Hystrix和Fegin里面使用的Hystrix,有些许区别.我理解的是Fegin.Hystrix主要是用于消费方在调用服务方接口时的异常处理,返回兜底数据等,而Hystrix则是消费方自己本 ...

  4. 禁止的回文子串 Dyslexic Gollum

    UVA1633 一个长的回文串都可以由短的回文串拓展而来,只要短的回文在左右两端增加相同的字符即可.因此,在考虑长度为NNN的01串时,只要在从长度为1向NNN拓展的过程中,保证后KKK个字符不是回文 ...

  5. JS数组创建

    1.使用Array构造函数 var arr1 = new Array(); //创建一个空数组 var arr2 = new Array(10); // 创建一个包含10项的数组 var arr3 = ...

  6. LoadRunner压力测试(web)

    1.打开Virtual User Generator->新建脚本->选择创建新脚本类型,web-HTTP,HTML->创建 2.录制脚本 3.停止脚本录制 4.创建controlle ...

  7. Cpolar使用

    官网:https://www.cpolar.com/ 下载好,安装,双击打开,注册,登录

  8. 艾思最新案例分享:塔蓝物流app-物流仓储管理系统app. app开发

    塔蓝物流app是一款物流仓储管理app:主要业务范围空运,海运,进出口货物及过境货物的运输代理,包括揽物订舱,仓储(危险品除外),包装,搬运装卸,中转,流通加工,集装箱拼装拆箱(危险品除外),结算运杂 ...

  9. idea项目编译时报错:程序包XXX不存在

    问题如下: 解决方法: 点击File-->点击settings-->点击maven-->点击Runner-->勾选Delegate IDE build/run action t ...

  10. 配置git到码云

    一.安装完git之后,对项目文件点击右键选择Git Base Here #Git 全局设置用户名与邮箱 git config --global user.name "" git c ...