day1
1.什么是互联网?
2.网络与网络之间是通过什么连接在一起的?
3.路由器是不是主机,为什么?
我的答案
1.全球最大的、开放的、由众多网络相互连接而成的特定互连网络,采用TCP\IP协议族作为通信规则
2.路由器
3.不是,路由器是网络连接设备,主机是智能手机、IP摄像头等。
day2:OSI七层体系结构:(面试必问)
网络协议 (network protocol),简称为协议,是为进行网络中的数据交换而建立的规则、标准或约定。
三个组成要素:
语法:数据与控制信息的结构或格式 。
语义:需要发出何种控制信息,完成何种动作以及做出何种响应。
同步:事件实现顺序的详细说明。
协议的两种形式
文字描述:便于人来阅读和理解
程序代码:让计算机能够理解
OSI七层体系结构:(面试必问)
TCP/IP
运输层:检查端口号,UDP:效率高,速度快,不靠谱,TCP:可靠的传输
网络层:检查IP号,发送IP数据报,主机与主机间的连接
数据链路层:检查biti值 0和1,需要封装成一帧一帧的发送,一个节点到另一个节点的连接
物理层,:没有帧数,实现0和1的传输
IP地址与端口号:
IP地址为32位二进制代码: -> 4个字节
一个字节->8个二进制代码
字节是计算机存储单位之一,代表着 8个二进制位。每个二进制位只有0或1两个取值,因此一个字节可以表示 256(2^8)种不同的状态包括数字、字母、符号等。
二进制转换成八进制的方法是,取三合一法,即从二进制的小数点为分界点,向左(或向右)每三位取成一位
可以用四位数的二进制数来代表一个16进制
特殊:10000000 128 10000001 129 11000000 192
11111111 255 11100000 224
IP地址在整个互联网范围内是唯一的。
通过看开头的数字可以对IP地址进行分类:
A类:0~127
B类:128~191
C类:192~223
D类: 224~
一般不用的特殊IP地址:
主机号全为1的为广播IP,结尾一般为255
网络前缀的使用:
地址掩码:
IPv6
解决IPv4资源不够的目的
在 IPv6 中,每个地址占 128 位,地址空间大于 3.4 × 10的38次方。---->为6个字节
使用冒号十六进制记法(colon hexadecimal notation, 简写为 colon hex):16 位的值用十六进制值表示,各值之间用冒号分隔。
零压缩:
端口号:
端口用一个 16 位端口号进行标志,允许有 65,535 个不同的端口号。
端口号只具有本地意义,只是为了标志本计算机应用层中的各进程。
在互联网中,不同计算机的相同端口号没有联系。
Linux下使用BSD端口:
0不使用,1-1023为系统端口,也叫BSD保留端口。
0-1023: BSD保留端口,也叫系统端口(root),这些端口只有系统特许的进程才能使用
1024~65535为用户端口,其中:
1024-5000: BSD临时端口,一般的应用程序使用1024到4999来进行通讯;
5001-65535:BSD服务器(非特权)端口,用来给用户自定义端口。
许多Linux内核使用32768至61000范围。配置文件/proc/sys/net/ipv4/ip_local_port_range有当前系统设定。
字节序
字节序是指多字节数据在计算机内存中存储或者网络传输时各字节的存储顺序
一个16进制位对应4个二进制位
2个16进制位对应1个字节
一个8进制位对应3个二进制位
主机字节序和网络字节序
一般主机当中使用小端字节序
网络通信当中必须使用大端字节序
检查电脑是大/小端字节序代码(面试重点)