ip协议 : 若实现计算机与计算机数据传输,ip协议会将数据进行分割,然后分块发送,不保证顺便到达也不保证能否到达
tcp协议 : 在ip协议的基础上,建立一个可靠的链接,可以保证数据顺序到达并且若出现丢包现像则会自动重发.保证数据安全到达.
网卡 : 电脑在网络上一个唯一标识,使用ip地址进行标识
端口 : 在计算上有很多网络程序,每个网络程序都要给自己申请一个唯一的端口号,这个端口号就是这个网络程序的唯一标识
三次握手四次挥手
三次握手:建立一个TCP协议的链接
四次挥手:断开一个TCP链接
为什么握手三次挥手要四次?
按道理来讲,应该都是四次的,因为在握手的时候无需考虑数据是否传递完毕的问题,这时候服务器端可以讲发送syn标识与确认信息一起返回,这样就少了一次.
TCP编程
客户端 :
1.创建一个socket对象
2.通过这个socket对象进行链接 connet(addr) (ip,端口号)
3.发送数据 send(data) data必须是二进制的
4.接受数据 recv(size) 一次性接受size个字节
5.断开链接 close()
服务端 :
1.创建socket对象
2.绑定地址 bind(addr)
3.设置最大链接数 listen(num)
4.等待链接 soke,addr = socket.accept()
5.接受客户端发送的数据 recv(size)
6.向客户端发送数据 send()
7.断开链接 close()
UDP编程
客户端 :
1.创建一个socket对象
2.发送消息到服务端 sock.sendto(data,addr)
3.接受数据 sock.recv(size)
4.close()
服务器 :
1.创建一个socket对象
2.绑定地址 sock.bind(addr)
3.获取客户端发送的数据 data,addr = sock.recvfrom()
4.发送数据 sendto(data,addr)
5.close()
邮件发送
1.导入发送的邮件的库
2.打开smtp服务器,端口号默认25
3.登陆邮箱,邮箱地址,密码[授权码]
4.发送邮件,发送者,发送给谁,发送的内容
5.退出邮箱