UDP передача файлов с каналом

Пожалуйста, помогите мне; Я не знаю, как обработать потерю скорости передачи пакетов в Python от 0 до 10%.

Мне нужно написать sender.py и receive.py, чтобы соединиться с каналом и изменить канал, чтобы он мог отправить картинку.

Вот код для channel.py:

#
import random
import socket
from socket import *

#Vary the channel loss rate between 0-10
lossRate = 0

#Create UDP sockets for sender and receiver
senderSocket = socket(AF_INET, SOCK_DGRAM)
receiverSocket = socket(AF_INET, SOCK_DGRAM)

# Assign IP address and port numbers to sockets
senderSocket.bind(('127.0.0.1', 5001))
receiverSocket.bind(('127.0.0.1', 5002))

receiverMessage, receiverAddress = receiverSocket.recvfrom(1600)
print "Receiver ready"

while True:    

    # Receive the messages from sender 
    senderMessage, senderAddress = senderSocket.recvfrom(1600)

    #forward the frame to the receiver with a random loss
    rand = random.randint(0,99)
    if rand > lossRate:
        receiverSocket.sendto(senderMessage, receiverAddress)
    #receive the ACK from receiver         
        receiverMessage, receiverAddress = receiverSocket.recvfrom(1600)    

        #forward the ACK to the sender with a random loss   
        rand = random.randint(0,99)
        if rand > lossRate:    
            senderSocket.sendto(receiverMessage, senderAddress)    

0 ответов

Другие вопросы по тегам