1.在浏览器地址栏输入一个URL后回车,背后会进行哪些技术步骤?
第一步:浏览器对用户输入网址做格式化检测
正确---->下一步
错误----->采用默认浏览器搜索
第二步:采用默认协议http访问,查询URL的IP地址。
先查浏览器自身缓存内存里有没有已解析过的结果,没有!
浏览器检查操作系统缓存中有没有已解析过的结果,没有!
再查本地硬盘里的host文件,也没有!
路由器缓存查询 ,没有!
通过UDP协议传输给DNS服务器 查询
—IP查询路由表—Gateway—MAC地址—ARP
DNS服务器在缓存里,没有!
DNS域名系统的根服务器查询。
拿到IP地址,DNS将结果返回给浏览器
第三步:建立TCP连接—三次握手
第四步:发送http请求
第五步:服务器响应http请求,浏览器得到html代码
第六步:浏览器解析html代码,并请求html代码中的资源
第七步:浏览器对页面进行渲染呈现给用户
第八步:传输完成,TCP挥手
2.确认号为服务器发送的上一个数据包中的序列号+所该数据包中所带数据的大小
3.tcp最大端口号65535是16位二进制最大数
4.TCP报文段的数据部分最多为65495字节,加上IP首部20字节,加上TCP首部20字节,等于最大长度
5.TCP采用大小可变的滑动窗口进行流量控制
6.当TCP 发送报文段时,就创建该特定报文段的重传计时器。可能发生两种情况:
1. 若在计时器截止时间到之前收到了对此特定报文段的确认,则撤销此计时器。
2. 若在收到了对此特定报文段的确认之前计时器截止期到,则重传此报文段,并将计时器复位。
7.基于TCP/UDP协议的应用程序判断?
A:PING明显不是,ping命令是向对方主机发送UDP数据包,然后对方主机确认收到数据包,如果数据包是否到达的消息及时反馈回来,那么网络就是通的。这个过程中没有三次握手。
B:TFTP,这个协议不常见,但是你肯定知道FTP协议,他是FTP的不可靠实现。此协议设计的时候是进行小文件传输的。FTP是基于TCP的,TFTP是基于UDP的。
C:TELNET是TCP传输的协议,必须建立连接才可以实现数据通信
D:要知道RIP使用UDP,OSPF使用IP,而BGP使用TCP。
8.
tcpdump是简单可靠网络监控的实用工具;
top 显示活动进程方面的情况;
netstat 显示网络有关的信息,比如套接口使用情况、路由、接口、协议(TCP等)等;
ifconfig 是用于显示或配置网络设备;
9.TCP协议规定DNS进程的服务端口号是:53
10.JDK提供了一个Socket类,用于实现TCP客户端程序