修改了Packet类名称

This commit is contained in:
2024-04-16 15:38:32 +08:00
parent 8d23463809
commit 95d61082e2
3 changed files with 36 additions and 33 deletions

View File

@@ -2,16 +2,18 @@ import time
import socket
import random
class Package:
class Packet:
def __init__(self, data:str, seq_num:int) -> None:
self.data = data
self.seq_num = seq_num
class ApplicationLayer:
def __init__(self, data_len:int=5000) -> None:
self.data_len = data_len
self.data_to_send = ["data{:0>4d}".format(i) for i in range(data_len)]
class NetworkLayer:
def __init__(self, host:str, port:int) -> None:
self.socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
@@ -34,7 +36,8 @@ class NetworkLayer:
def close(self):
self.client_socket.close()
self.socket.close()
class Sender:
def __init__(
self,
@@ -45,7 +48,7 @@ class Sender:
) -> None:
self.window_size = window_size
self.max_seq_num = max_seq_num
self.package_list:list[Package] = [None] * (self.max_seq_num + 1)
self.packet_list:list[Packet] = [None] * (self.max_seq_num + 1)
self.base_num = 1
self.next_seq_num = 1
self.timeout_ms = timeout_ms
@@ -58,10 +61,10 @@ class Sender:
if self.next_seq_num >= self.base_num + self.window_size:
return False
self.package_list[self.next_seq_num] = Package(data, self.next_seq_num)
self.packet_list[self.next_seq_num] = Packet(data, self.next_seq_num)
self.udt_send(
self.package_list[self.next_seq_num].data,
self.package_list[self.next_seq_num].seq_num
self.packet_list[self.next_seq_num].data,
self.packet_list[self.next_seq_num].seq_num
)
if self.base_num == self.next_seq_num:
self.timer = time.time()
@@ -79,7 +82,7 @@ class Sender:
print(f"将base_num设置为下一个序列编号。")
self.timer = None
else:
print(f"将base_num设置为{self.package_list[self.base_num].seq_num}")
print(f"将base_num设置为{self.packet_list[self.base_num].seq_num}")
def udt_send(self, data:str, index:int):
index_data = '{:0>3d} '.format(index) + data
@@ -100,8 +103,8 @@ class Sender:
seq_index = self.base_num
while seq_index < self.next_seq_num:
self.udt_send(
self.package_list[seq_index].data,
self.package_list[seq_index].seq_num
self.packet_list[seq_index].data,
self.packet_list[seq_index].seq_num
)
seq_index += 1
@@ -109,7 +112,7 @@ class Sender:
show = []
seq_index = self.base_num
while seq_index < self.next_seq_num:
show.append(self.package_list[seq_index].seq_num)
show.append(self.packet_list[seq_index].seq_num)
seq_index += 1
return show