应用层
UDP套接字编程
套接字分组上有目的地址和源地址,目的地址可能由我们指定,源地址也就是发送方的IP地址和端口号,则由底层操作系统自动完成
serverName被设定为了字符串’hostname’,这里的’hostname’是我们提供的服务器IP或服务器的主机名的字符串 serverPort是端口号 这一行创建了该客户的套接字,名字是clientSocket,AF_INET指定了底层网络使用IPv4,SOCK_DGRAM表示我们使用的是UDP而不是TCP 这一行使用python内置的函数raw_input,用户输入一行数据,名称为message 因为报文内容只能为字节形式,使用encode将字符串转为字节,发送出去 以缓存长度接收来自因特网的分组,数据存放在modifiedMessage里,源地址放在severAddress里
将接口12000与套接字severSocket绑定在一起,以后只要有访问12000的分组进入,该分组直接被导向该套接字
TCP套接字编程
与UDP不同的是,TCP在套接字创建完毕后,需要用connect命令建立TCP连接,连接建立完成后,发送信息就不需要传入服务器信息了。 这条代码执行完后,执行三次握手,并创立TCP连接
|