美文网首页
HTTP网络协议(学习笔记一)

HTTP网络协议(学习笔记一)

作者: 小小小小饼 | 来源:发表于2021-08-16 13:42 被阅读0次

最近在学习/复习软件工程师必备的技能------ HTTP网络协议,一共是22课,计划写4份学习笔记。(内容会自我完善,方便自己查阅)
1.基本概念
2.集线器网桥交换机
3.MAC地址IP地址子网掩码
4.超网_静态路由
5.局域网_NAT

HTTP网络协议

1.基本概念

流媒体,可跨平台(前端、iOS、android)
即时通讯,需要看搞后端还是客户端

互联网

Q:数据是如何从一个设备传递到另一个设备?
A:通过网络协议来规定的,没有网络协议,就没有今天的互联网

各种各样的网络协议:HTTP、HTTPS、SMTP、MQTT、RTMP

Q:TCP和UDP的区别?说一下它们的报文格式

Q:TCP的流量控制和拥塞控制?TCP如何实现可靠性传输?

Q:为什么连接是3次握手,4次挥手?

Q:7层模型和4层模型的区别?每一层的作用是什么?

Q:交换机与路由器的区别?

网络抓包

浏览器:(Chrome、Firefox)、 Fiddler、Wireshark
模拟工具:Xshell(只有Windows 版)

JAVA 25年了,生态圈很成熟。 GO新起之秀,短时间不可能打败JAVA,不成熟。

C/C++ 跨平台:(.c/.cpp文件)
-> 一份代码能跑多个平台(操作系统),效果基本一样。
原理:进行不同平台编译成不同格式的文件。

Windows:PE格式 0101加到内存中
Mac:Mach-O 格式
Linux:ELF格式
JAVA跨平台原理:.java — 编译 —.class (跟平台无关的字节码文件,不是可执行文件)
-> 一次编译,到处执行
编译成跟平台无关的字节码文件(class文件)
JVM:Java Virtual Machine 软件,JAVA虚拟机。Oracle提供(JAVA官方Sun公司,2009以74亿美元被Oracle收购) (有JDK,就有JRE,就能使用JVM)

Windows:启动JVM,加载字节码文件到内存中,并解析,转成0101机器指令
Mac:同上
Linux:同上


服务器软件.PNG
客户端 服务器
CPU、内存、散热要求高
多端口:80端口运行软件(服务器软件:作用占用某个端口,为了监听端口网络数据流通),拿到数据,解析,返回数据。 ———————— 怕服务器软件撑不住,再加一个端口8080。
安装服务器软件Tomcat(免费开源),启动JVM— 启动Tomcat — 把JAVA代码执行 (bin目录,startup.bat Windows 系统启动,startup.sh Linx 系统启动)
http://IP地址:端口号/项目

什么是协议?约束双方,减少沟通成本。
国际标准化组织ISO,1985年制定了网络互联模型
OSI参考模型 Open System Interconnect Reference Model,具有7层。
TCP/IP 协议:实际应用参考模型


应用星 (Applikation).PNG

2.集线器网桥交换机

搭建JAVA服务器开发环境

网络中的一些基本概念
MAC地址、IP地址、路由器、交换机
HTML CSS JS基础
Sevlet: JSP API Sevlet API
JAVA里的包类似C++、C#的namespace

计算机之间的通信基础
1.需要知道IP地址
2.网卡:接受数据,MAC地址(网卡地址)(交换机解析拿到网卡地址)
不在同一个网段,路由器的功能是把他们连接不同的网段

ARP协议,广播(广播是在同一个网段中实现的)ARP是有缓存的
发广播的目的:获取对方的MAC地址,同一网段所有网卡都能接收

ICMP

网线直联:交叉线(不是直线)

同轴电缆:半双工通信(基本已淘汰)信号可能会叠加、冲突,需要等待时机。不安全,有冲突域

集线器hub: 半双工通信,容易冲突,不安全,跟同轴电缆一样没有智商。(没有存储功能,计算机才有缓存)(同轴电缆升级版,理解为把线连在一起)缺点:占用带宽,占用线路

网桥(Bridge):连接同一个网段,记录MAC地址
它能通过自学习得知每个接口那侧的MAC地址
从而起到隔离冲突域的作用

STP 生成树协议

交换机(Switch-PT ):局域网的最终方案(跨网段用路由器)有记忆功能
相当于接口更多的网
全双工通信
可设置上网的MAC地址

路由器(Router):可以在不同网段之间转发数据
隔绝广播域

3.MAC地址IP地址子网掩码

IMG_5341.PNG

总结:

网线直连、同轴电缆、网桥、交换机

连接的设备必须在同一网段

连接的设备处在同一广播域

路由器

可以在不同的网段之间转发数据

隔绝广播域

路由器提供网关

网关:帮助跨网段

MAC地址
每个网卡都有一个6字节(48bit)的MAC地址 (Media Access Control Address)
1个16 进制 = 4 个 2进制, 2个16进制 = 8 个 2进制

40-55-82 A1-8C-62
全球唯一,固化在了网卡的ROM中,由IEEE802标准规定
前3字节:OUI(Organizationally Unique Identifier),组织唯一标识符
IEE注册管理机构分配给厂商

后3字节:网络接口标识符
由厂商自行分配

当48位全为1时,为广播地址

硬件是全球唯一的,操作系统可以更换MAC地址(可以自行修改电脑里的MAC地址)

Pyhsical Address

动态存两分钟,静态很久(操作系统不一样,时间可能不一样)

IP地址 Internet Protocol Address
IPv4,32bit(4字节),2019.11.25,全球的IP地址已用完
IPv6,128biit(16字节)

IP地址:网络ID + 主机ID
网段计算:IP地址 子网掩码,按位与运算可以得出

IP地址:192.168.1.10
子网掩码:255.255.255.0

1100 0000.1010 1000.0000 0001.0000 1010
& 1111 1111.1111 1111.1111 1111.0000 0000
————————————————————————
1100 0000.1010 1000.0000 0001.0000 0000
-> 192.168.1.0 网段

IP地址:130.168.1.10
子网掩码:255.255.0.0
网段:130.168.0.0

256 + 256 - 2 (130.168.0.0网段\130.168.255.255 这个是广播地址)

A类 (0-127 8)120.255.255.255 最大主机数:256256256 - 2 = 2的24次方 - 2 = 16777214
B类 (128-191 16) 256256 -2 = 2 的 16次方 - 2 = 65534
C类(192-223 24) 最常见,256 -2 = 254
D类,没有子网掩码,用于多播(组播)地址
E类,保留今后使用

CIDR 无类别域

Q:为什么要进行子网划分?
A:如果需要让200台主机在同一个网段内,可以分配到C类网段,比如192.168.1.0/24

子网划分:借用主机位作子网位,划分出多个子网

可分为
-等长子网划分:将一个网段等分成多个子网,每个子网的可用IP地址数量是一样的
-变长子网划分:每个子网的可用IP地址数量可以是不一样的

本来有一个C类网段,192.168.0.0/24
划分为2个子网段

192.168.0.0/25,子网掩码 255.255.255.128
192.168.0.1~192.168.0.126 (126台

192.168.0.128/25
192.168.0.129~192.168.0.254 (126台

规律:如果一个子网是原来网络的1/2,子网掩码往后移一位
规律:如果一个子网是原来的1/2 * 1/2 = 1/4, 子网掩码往后移2位

网关不能是网段

4.超网_静态路由

超网:跟子网反过来,它是将多个连续的网段合并成一个更大的网段

子网掩码向左移动2位,可以合并为四个网段

能被4整除的2进制都是00,

当不知道用什么配置的时候用默认路由0.0.0.0

路由
默认情况下,路由器只知道它直连的网段,非直连的网段需要通过静态路由,、动态路由告诉他

静态路由
-管理员手动给添加路由细腻些
-适用小规模网络

动态路由
-路由器通过路由选择协议(比如RIP、OSPF)自动获取路由信息
-适用于大规模网络

交换机用以太口

Seral串口两个路由器直连,需要是相同的网段。 下一跳只需要填IP,因为在相同网段不需要填子网掩码

静态 设置特定IP路由,子网掩码甜255.255.255.255
默认路由 网络和掩码都填0.0.0.0 ,下一跳要指定

5.局域网_NAT

数据包的传输过程 (在看一次

网络、互联网、英特网
网络(Network)
互联网(internet):利用路由器实现更大的网段

全世界最大的网络:英特网(Internet) 大写,特指因特网
-将全世界所有计算机都连接在一起
-一般使用大写I开头的Internet 特指因特网
-日常生活中说的:你的电脑上不了网。其实就是指:您的电脑没有连接到因特网

ISP(Internet Service Provider),Internet服务提供商,比如移动、电信、网通、铁通等
我们平时拉的宽带都是通过ISP连接到Internet的

双线机房,保持不同的ISP访问速度可以更快

网络分类
局域网:LAN(Local Area Network)
-一般范围在几百米到几十公里的哪的计算机所构成的计算机网络
-常用于公司、家庭、学校、医院、机关、一幢大楼等
-利用以太网技术(Ethernet)
-在电脑、手机上经常见的到一个英文单词WLAN(wireless LAN),无限局域网

城域网(Metropolitan Area Network, MAN)
-一般范围是数十公里到数百公里,可以覆盖一个城市

广域网(Wide Area Network,WAN)
-一般范围是在几百公里到几千公里,可以覆盖一个国家。通常都需要租用ISP的路线

常用的几种接口
FastEthernet
快速以太网口(100M)(局域网)

GigabitEthernet
千兆以太网接口

Serial
串行接口(路由器之间)

上网方式

电话线入户(早期,铜线)
这就是平时说的:ADSL 电话拨号上网(Asymmetric Digital Subscriber Line)Asymmetric非对称
-非对称数字用户线路、提供上、下行不对称的传输宽带(下载快,上传慢)

猫(Modem)调制解调器,进行数字信号和模拟信号的转换
(计算机用的数字信号,电话线传的是模拟信号,调制解调器降它们转换)

光猫(Optical Modem),广调制解调器,进行数字信号和光信号的转换

网线入户

光纤入户(使用更多),需要自备调制解调器

家用无线路由器的逻辑结构


Ma。家用无线路由器的逻辑结构.PNG

公网IP、私网IP
公网IP(Public)
-Internet上的路由器中只有到达公司的路由器表,没有到达私网的路由表
-公网IP由因特网信息中心(Internet Network Information Center, Inter NIC)统一分配和管理
-ISP需要香Inter NIC申请公网IP

私网IP(Private)
主要用于局域网,下面是保留的私网网段

A类:10.0.0.0/8, 一个A类网络
B类:172.16.0.0/16~172.31.0.0/16,16个B类网络
C类:192.168.0.0/24~192.168.255.0/24,256个C类网络

NAT(Network Address Translation)
-私网IP访问Internet需要进行NAT转换为公网IP
-由路由器来完成

NAT的特点
-可以节约公网IP资源
-会隐藏内部的真实IP

NAT的分类
-静态转换
手动配置NAT映射表、一对一转换

-动态转换
定义外部地址池,一对一转换

-PAT( Port Address Translation) (最常用的NAT技术)
多对一,多个私网IP对应一个公网IP,最大程度
采用端口多路复用的方式,通过端口号标识不同的数据流
目前应用最广泛的NAT实现方式

同一局域网向外发送信息,可能IP会一样,但是路由器会记住客户端端口号(随机)

相关文章

  • HTTP网络协议(学习笔记一)

    最近在学习/复习软件工程师必备的技能------ HTTP网络协议,一共是22课,计划写4份学习笔记。(内容会自我...

  • 十.网络协议学习笔记 HTTP

    HTTP HTTP Hyper Text Transfer Protocol 超文本传输协议 HTML Hyper...

  • HTTP网络协议(学习笔记六)

    HTTP网络协议(六) 19~20课 19.HTTPS 安全这种东西是相对的,尽可能提高安全性 HTTP(Hype...

  • HTTP网络协议(学习笔记三)

    HTTP网络协议(三) 8~12课 TCP的几个要点 可靠传输 流量控制 拥塞控制 连接管理-建立连接-释放连接 ...

  • HTTP网络协议(学习笔记五)

    HTTP网络协议(五) 15~18课 15.状态码_form提交 状态码(Status Code) -状态码指示H...

  • HTTP协议笔记

    HTTP协议笔记 标签(空格分隔): HTTP,TCP/IP [TOC] 1.网络协议基础知识 TCP/IP协议族...

  • HTTP学习笔记

    HTTP学习笔记 1. web与网络基础 1.1使用HTTP协议访问Web 客户端(client, 浏览器brow...

  • 【网络协议笔记】HTTP 协议整理

    文前说明作为码农中的一员,需要不断的学习,我工作之余将一些分析总结和学习笔记写成博客与大家一起交流,也希望采用这种...

  • Http网络协议包

    1.网络协议包: 2.常见网络协议: 3.Http网络协议包: 4.Http请求协议包与Http响应协议包介绍: ...

  • HTTP协议学习笔记

    一、HTTP简介 HTTP超文本传输协议是用于从万维网服务器传输超文本到本地浏览器的传送协议,HTTP基于TCP/...

网友评论

      本文标题:HTTP网络协议(学习笔记一)

      本文链接:https://www.haomeiwen.com/subject/pmmmbltx.html