契約の下でのUDPソケットプログラミング
リンクが信頼できない.udpではありません
TCPプロトコルの章が信頼性がある、そこに情報の交換の完了を確認するためのフィードバック情報であるかではないでしょう
かどうかに関係なく、他の受信した情報の書かれたサービスとクライアント、その職務に基づいて、UDPプロトコルは、単に自分自身缶を送ります
II。クライアント
インポートソケット #は、携帯電話を購入-ファミリーソケット|ポートプロトコル 電話= socket.socket(はsocket.AF_INET、socket.SOCK_DGRAM) #のサーバアドレス = ip_port(' 127.0.0.1 '、8001 ) #複数の送信情報を達成 しばらく真: #は、メッセージのカスタマイズ (MSG =入力を「メッセージを入力してください:」) #を情報がnullの場合、この場合は、決定されたスキップ場合、プログラムは、スタック引き起こす可能性が あれば 未MSGは: 続行 #がオンになっている携帯電話を特定する情報を送信しますデータアドレスとサーバ phone.sendto(msg.encode(' UTF-8 ' )、ip_port用) 印刷("サーバに情報を送信する:「MSG) #指定した量によって受信されたフィードバック情報受信 データ、ADDR = phone.recvfrom(10 ) 印刷(「サーバーに正常にフィードバック情報を受信」) #のシャットダウン phone.close()
III。サーバ
インポートソケット #は、携帯電話を購入-ファミリーソケット|ポートプロトコル 電話= socket.socket(はsocket.AF_INET、socket.SOCK_DGRAM) #の購入電話カード-リスンアドレス- IP |ポート番号 phone.bind((" 127.0.0.1「8001 )) #の複数の情報を送受信 しばらく真: #の携帯電話は電源を入れた後、受信した情報の数を特定する情報を受け取り、 #をクライアントのアドレスとデータを返す データを、ADDR = phone.recvfrom(10 ) 印刷(」受信した顧客終わりのための情報:「データ) #メッセージを受信した後、彼は正常に受信したことを伝えるために戻って、クライアント側にメッセージ phone.sendtoを(データ、ADDR) 印刷(」クライアントへの成功はフィードバックメッセージを送信します") #すべてのリンクをオフにする操作が完了した後、シャットダウン link.closeを() phone.close()
四の概要 - 簡素化
クライアント:
ソケット= CS() #は、クライアントソケットを作成 :comm_loop #通信サイクル cs.sendto()/ cs.recvfrom() #の対話を(受信/送信) cs.close()# は、クライアントソケットを閉じます
サーバー:
SS =ソケット1() #サーバソケットを作成する 2 ss.bind() #のバインドサーバーソケット 3 inf_loop: #1 サーバ無限ループ 4 CS = ss.recvfrom()/ ss.sendto()#の対話を(送受信) 。5 ss.close() #近いサーバソケット