服务器相关

本文主要讲述以下内容:

  • TCP 面试题

  • IP 初步了解

  • 端口的理解

  • 服务器与客户端的沟通流程

一.TCP 传输控制协议(Transmission Control Protocol)

1.TCP 和 UDP 的区别是什么

简答:TCP 可靠(我发一个请求,成功不成功我是知道的,比如访问谷歌,如果成功,我就显示搜索框页面 ,如果失败,我就显示一个错误页面)、面向连接、相对 UDP 较慢;UDP 不可靠,不面向连接、相对 TCP 较快。搞定。

2.TCP 的三次握手指的是什么

简答:每次建立连接前,客户端和服务端之前都要先进行三次对话才开始正式传输内容,三次对话大概是这样的:

1. 客户端:我要连接你了,可以吗

2.服务端:嗯,我准备好了,连接我吧

3. 客户端:那我连接你咯。

4. 开始后面步骤


二.IP网络协议(Internet Protocol)

ip

1.从电信买来宽带,电信为你提供DNS服务,接着你买了一个路由器提供wifi,只要路由器连上电信的服务器,路由器就会有一个外网IP,这是你在互联网的地址

2.同时路由器在你家为你创建了一个内网,它为自己分配一个内网IP,并为每台设备分配不同的IP,IP格式一般为192.168.xxx.xxx,

3.所谓IP协议就是为计算机网络相互连接进行通信而设计的协议。内网之间可以互相访问,外网之间可以互相访问,但是内网必须通过路由器才能访问外网,因为路由器同时具有内网IP和外网IP,所以路由器充当一个网关的作用,必不可少。

4.每台设备都有本地IP地址为127.0.0.1 ,永远表示设备自己,

5.host可以设置任何域名对应的IP, hosts 文件里会有一行127.0.0.1 localhost,意思就是 localhost 指向 127.0.0.1,所以 localhost 也表示设备自己


三.端口Port

如果想要访问一个设备(前提是你使用的是 TCP 或 UDP 协议),只指定IP 还不行,还必须指定端口,比如指定 80 使用HTTP服务,指定443使用HTTPS服务,一台设备共有 65535(2的16次方减1)个端口,每个端口提供一种服务。

server

  1. 0 到 1023(2的10次方减1)号端口是留给系统使用的,你只有拥有了管理员权限后(以管理员身份打开git bash),才能使用这 1024 个端口。

  2. 其他端口可以给普通用户使用

  3. 如果一个端口正在提供服务,也就是被占用了,那么就不能再使用这个端口。除非你先停掉正在占用这个端口的服务。以后会经常遇到这个问题。

使用 HTTP 协议访问另一个 IP 时,必须同时提供 IP 和端口号,缺一不可。

浏览器默认80端口(http),所以一般在网页上http请求输入地址可以不指定端口号

四.服务器与浏览器的沟通过程

服务器:一台电脑就是一台服务器,并且要联网,CPU要高,内存要大,是一个没有显示器的主机,使用服务器需用SSH远程登录进行连接。

1.当浏览器输入url,缺协议,给你加http,缺端口,给你80,缺路径,给你一个/,凑成一个完整的url,

2.浏览器向 DNS服务发送询问得到服务器IP地址,

3.浏览器向这个IP地址发起HTTP请求,

4.服务器接受到请求,分析http请求报文返回http响应报文,浏览器下载返回报文中的内容

5.如果文件是html,浏览器进行解析html,遇到静态文件img,css,js,依次发送请求,浏览器继续下载,最终将页面呈现给用户

HTTP 路径不是文件路径!!!/xxx.html 不一定对应 xxx.html 文件,文件格式由http头的Content-type 决定,中文解析错误是因为没有使用编码方式,node添加请求头如下:response.setHeader('Content-Type', 'text/html; charset=utf-8')

END!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值