亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

TCP協(xié)議實(shí)戰(zhàn):RDT與Reno擁塞控制的Log級(jí)調(diào)試方法

TCP協(xié)議實(shí)戰(zhàn):RDT與Reno擁塞控制的Log級(jí)調(diào)試方法 簡(jiǎn)介本資源是一份完整的計(jì)算機(jī)網(wǎng)絡(luò)課程大作業(yè)實(shí)驗(yàn)報(bào)告面向高校計(jì)算機(jī)、網(wǎng)絡(luò)工程等專業(yè)本科生聚焦TCP協(xié)議核心機(jī)制的實(shí)踐分析與迭代開發(fā)過程。報(bào)告系統(tǒng)梳理了RDT 2.0/2.2/3.0錯(cuò)誤檢測(cè)與重傳機(jī)制、選擇響應(yīng)協(xié)議實(shí)現(xiàn)以及Reno擁塞控制中慢開始、擁塞避免、快恢復(fù)等關(guān)鍵策略并結(jié)合LOG文件與狀態(tài)日志如cwnd、ssthresh動(dòng)態(tài)變化深入解析各階段行為有效彌補(bǔ)了純?nèi)罩倦y以直觀識(shí)別擁塞階段的學(xué)習(xí)難點(diǎn)。資源為單個(gè)Word文檔.doc大小945KB結(jié)構(gòu)清晰含學(xué)號(hào)姓名等規(guī)范格式、5大實(shí)驗(yàn)?zāi)K分析、未完成問題反思、迭代開發(fā)方法論總結(jié)及教學(xué)改進(jìn)建議。目前已有291人學(xué)習(xí)下載適合需要理解傳輸層底層邏輯、掌握協(xié)議調(diào)試與日志分析能力的學(xué)習(xí)者作為課程作業(yè)參考或自學(xué)范本。1. 這份《計(jì)算機(jī)網(wǎng)絡(luò)實(shí)驗(yàn)報(bào)告.doc》不是模板套話而是RDT協(xié)議與Reno擁塞控制的實(shí)操黑匣子它用5個(gè)可復(fù)現(xiàn)的TCP傳輸層模塊、4類log解析技巧、3種cwnd動(dòng)態(tài)觀測(cè)法把抽象協(xié)議變成能跑通、能調(diào)參、能debug的真實(shí)代碼鏈路你手頭這份標(biāo)著“計(jì)算機(jī)網(wǎng)絡(luò)大作業(yè)”的Word文檔表面看是課程報(bào)告實(shí)際是一份被嚴(yán)重低估的TCP協(xié)議實(shí)戰(zhàn)手記。它不講OSI七層模型背誦口訣也不堆砌RFC文檔截圖而是用RDT 2.0到3.0的演進(jìn)路徑把“校驗(yàn)和怎么算”“ACK位錯(cuò)怎么判”“超時(shí)重傳怎么觸發(fā)”全釘死在log文件的每一行里更關(guān)鍵的是它用Reno擁塞控制的慢開始、快恢復(fù)、乘法減小三階段在log中硬生生鑿出一條可觀測(cè)的cwnd變化軌跡——不是靠畫圖猜而是靠每輪次強(qiáng)制輸出ssthresh和當(dāng)前窗口值。如果你正卡在Wireshark抓包看不懂cwnd跳變、仿真器里調(diào)不出快恢復(fù)觸發(fā)點(diǎn)、或者log里翻半天找不到擁塞避免起始時(shí)刻這份報(bào)告就是你缺的那塊調(diào)試拼圖。它適合剛寫完socket但對(duì)TCP狀態(tài)機(jī)還停留在“三次握手四次揮手”層面的本科生也適合想驗(yàn)證自己實(shí)現(xiàn)的Reno算法是否真符合RFC 5681的研究生——因?yàn)樗薪Y(jié)論都錨定在可復(fù)現(xiàn)的log結(jié)構(gòu)、可修改的發(fā)送端隊(duì)列邏輯、可替換的校驗(yàn)和計(jì)算函數(shù)上。2. RDT協(xié)議棧的五層遞進(jìn)從位錯(cuò)檢測(cè)到選擇性應(yīng)答每個(gè)版本的log結(jié)構(gòu)都暴露了協(xié)議設(shè)計(jì)者的妥協(xié)與權(quán)衡2.1 RDT 2.0校驗(yàn)和ACK確認(rèn)隊(duì)列為什么必須用循環(huán)檢查而非單次掃描RDT 2.0的核心約束是信道只傳數(shù)據(jù)包不傳錯(cuò)誤包接收端能檢出位錯(cuò)但無法主動(dòng)通知發(fā)送端。因此發(fā)送端必須靠“收到ACK才推進(jìn)”來保證可靠交付。但ACK本身可能丟失——所以發(fā)送端維護(hù)一個(gè)確認(rèn)號(hào)隊(duì)列ack_queue記錄已發(fā)但未確認(rèn)的包序號(hào)。關(guān)鍵點(diǎn)在于這個(gè)隊(duì)列不是靜態(tài)緩存而是循環(huán)檢查loop-check結(jié)構(gòu)。# 典型RDT 2.0發(fā)送端偽代碼對(duì)應(yīng)報(bào)告中發(fā)送端循環(huán)檢查確認(rèn)號(hào)隊(duì)列中是否有新收到的 ACK def send_rdt20(packet, seq_num): # 發(fā)送前存入待確認(rèn)隊(duì)列 ack_queue.append(seq_num) send_udp(packet) # 啟動(dòng)超時(shí)定時(shí)器 start_timer(seq_num) # 循環(huán)檢查不是等單個(gè)ACK而是持續(xù)掃描整個(gè)隊(duì)列 while ack_queue: # 隊(duì)列非空就持續(xù)輪詢 for ack in received_acks: # received_acks是全局接收緩沖區(qū) if ack.seq_num in ack_queue: ack_queue.remove(ack.seq_num) # 移除已確認(rèn)項(xiàng) break # 找到一個(gè)就跳出內(nèi)層循環(huán)繼續(xù)外層while time.sleep(0.01) # 避免CPU空轉(zhuǎn)注意這里的while ack_queue:不是簡(jiǎn)單的“隊(duì)列空了就結(jié)束”而是只要隊(duì)列里還有未確認(rèn)包就不斷掃描新到達(dá)的ACK。原因在于UDP無連接特性下ACK可能亂序到達(dá)也可能因網(wǎng)絡(luò)抖動(dòng)延遲抵達(dá)。如果只做一次掃描如if ack in ack_queue會(huì)漏掉后續(xù)到達(dá)的ACK導(dǎo)致假超時(shí)重傳。報(bào)告中強(qiáng)調(diào)“循環(huán)檢查”正是為應(yīng)對(duì)這種非確定性網(wǎng)絡(luò)行為——這是RDT 2.0區(qū)別于理想化模型的關(guān)鍵工程細(xì)節(jié)。2.2 RDT 2.2ACK校驗(yàn)和的雙重陷阱——為什么發(fā)送端要驗(yàn)ACK而接收端不驗(yàn)DATARDT 2.2的升級(jí)點(diǎn)在于ACK包本身也可能發(fā)生位錯(cuò)。若發(fā)送端誤將損壞的ACK當(dāng)作有效確認(rèn)就會(huì)提前清除隊(duì)列造成數(shù)據(jù)丟失。因此發(fā)送端必須對(duì)每個(gè)收到的ACK執(zhí)行校驗(yàn)和驗(yàn)證。# RDT 2.2發(fā)送端ACK校驗(yàn)邏輯對(duì)應(yīng)報(bào)告中發(fā)送端對(duì)于收到的每一個(gè) ACK 包檢驗(yàn)其校驗(yàn)和 def validate_ack(ack_packet): # 提取ACK包的有效載荷不含校驗(yàn)和字段 payload ack_packet[:-2] # 假設(shè)校驗(yàn)和占最后2字節(jié) computed_checksum calculate_checksum(payload) received_checksum int.from_bytes(ack_packet[-2:], big) return computed_checksum received_checksum # 關(guān)鍵參數(shù)說明 # - calculate_checksum() 必須與接收端生成DATA包校驗(yàn)和的算法完全一致通常為16位反碼和 # - ack_packet[-2:] 是校驗(yàn)和存儲(chǔ)位置需嚴(yán)格匹配協(xié)議定義若位置錯(cuò)誤校驗(yàn)永遠(yuǎn)失敗 # - 校驗(yàn)失敗的ACK直接丟棄不觸發(fā)任何隊(duì)列操作等待超時(shí)重傳這里有個(gè)易被忽略的對(duì)稱性接收端對(duì)DATA包校驗(yàn)發(fā)送端對(duì)ACK包校驗(yàn)但接收端不校驗(yàn)ACK因?yàn)樗皇誂CK發(fā)送端不校驗(yàn)DATA因?yàn)樗皇誅ATA。這種分工源于角色隔離——發(fā)送端只關(guān)心“我發(fā)的包是否被正確確認(rèn)”接收端只關(guān)心“我收的包是否完整”。報(bào)告中未明說但隱含的邏輯是ACK包結(jié)構(gòu)比DATA包簡(jiǎn)單通常只有seq_num校驗(yàn)和校驗(yàn)開銷低且ACK丟失可通過超時(shí)補(bǔ)償而DATA包校驗(yàn)失敗必須立即丟棄否則污染應(yīng)用層數(shù)據(jù)。2.3 RDT 3.0發(fā)送端發(fā)錯(cuò)的根源不在代碼而在定時(shí)器精度與網(wǎng)絡(luò)RTT的博弈RDT 3.0引入“發(fā)送端發(fā)錯(cuò)”場(chǎng)景本質(zhì)是解決RDT 2.2的缺陷當(dāng)ACK丟失時(shí)發(fā)送端超時(shí)重傳但原ACK隨后到達(dá)導(dǎo)致接收端重復(fù)交付。RDT 3.0通過序列號(hào)定時(shí)器協(xié)同規(guī)避此問題但報(bào)告指出“發(fā)送端發(fā)錯(cuò)”現(xiàn)象仍存在——這并非bug而是協(xié)議設(shè)計(jì)必然代價(jià)。# 分析log文件中RDT 3.0“發(fā)錯(cuò)”典型模式需用grep提取關(guān)鍵行 $ grep -E (send|recv|timeout|dup) rdt30_log.txt [12:05:03] SEND pkt_seq5, cwnd1 [12:05:03.210] TIMEOUT pkt_seq5, retransmit [12:05:03.215] RECV ACK_seq5 # 原ACK遲到5ms [12:05:03.220] SEND pkt_seq5 # 重傳包已發(fā)出無法撤回現(xiàn)象解釋TIMEOUT觸發(fā)重傳是正確行為RECV ACK_seq5證明原包已被接收端正確處理SEND pkt_seq5是重傳包接收端會(huì)按序號(hào)丟棄因已交付seq5所以“發(fā)錯(cuò)”實(shí)質(zhì)是網(wǎng)絡(luò)RTT波動(dòng) 定時(shí)器設(shè)置值 → 導(dǎo)致不必要的重傳。報(bào)告中未給出具體定時(shí)器算法但實(shí)操中常見做法是采用指數(shù)加權(quán)移動(dòng)平均EWMA估算RTT公式為EstimatedRTT (1-α) * EstimatedRTT α * SampleRTTα通常取0.125若SampleRTT突增如路由切換EstimatedRTT滯后Timeout EstimatedRTT × 4 就可能過短。這是RDT 3.0在真實(shí)網(wǎng)絡(luò)中必然面對(duì)的trade-off而非代碼缺陷。2.4 選擇響應(yīng)協(xié)議為什么接收端“每個(gè)校驗(yàn)正確包都應(yīng)答”反而降低吞吐量報(bào)告中“選擇響應(yīng)協(xié)議”指Selective AcknowledgmentSACK的簡(jiǎn)化版接收端對(duì)每個(gè)正確包立即發(fā)送ACK而非累積ACK。這看似提升響應(yīng)速度但log分析顯示吞吐量下降——原因在于ACK風(fēng)暴與帶寬競(jìng)爭(zhēng)。# RDT 3.0 log片段累積ACK模式 [10:00:00] RECV pkt_seq1 → no ACK (wait for next) [10:00:00] RECV pkt_seq2 → no ACK [10:00:00] RECV pkt_seq3 → SEND ACK_seq3 (cumulative) # 選擇響應(yīng)log片段每個(gè)包獨(dú)立ACK [10:00:00] RECV pkt_seq1 → SEND ACK_seq1 [10:00:00] RECV pkt_seq2 → SEND ACK_seq2 [10:00:00] RECV pkt_seq3 → SEND ACK_seq3對(duì)比可見累積ACK3個(gè)DATA包僅觸發(fā)1個(gè)ACKACK帶寬占用率≈1/3選擇響應(yīng)3個(gè)DATA包觸發(fā)3個(gè)ACKACK帶寬占用率100%在高丟包率網(wǎng)絡(luò)中ACK包本身可能丟失導(dǎo)致發(fā)送端反復(fù)重傳DATA形成惡性循環(huán)。報(bào)告中“接收端對(duì)于每一個(gè)校驗(yàn)和正確的接收包,都進(jìn)行應(yīng)答”是教學(xué)簡(jiǎn)化真實(shí)TCP SACK需配合SACK選項(xiàng)字段RFC 2018僅對(duì)失序包發(fā)送SACK塊而非每個(gè)包都ACK。此處選擇響應(yīng)協(xié)議的log分析實(shí)則是引導(dǎo)學(xué)生發(fā)現(xiàn)“協(xié)議簡(jiǎn)潔性”與“網(wǎng)絡(luò)效率”的根本矛盾。2.5 Reno擁塞控制log中cwnd變化的四個(gè)不可見斷點(diǎn)如何用日志注入強(qiáng)行顯形Reno的慢開始、擁塞避免、快恢復(fù)、乘法減小四階段在標(biāo)準(zhǔn)log中難以區(qū)分因?yàn)閘og只記錄事件如“發(fā)送pkt_seq100”不記錄狀態(tài)變量。報(bào)告提出的解決方案——“每個(gè)傳輸輪次結(jié)束后輸出當(dāng)前日志信息”——本質(zhì)是在協(xié)議棧關(guān)鍵路徑插入狀態(tài)快照鉤子。# Reno擁塞控制核心狀態(tài)跟蹤對(duì)應(yīng)報(bào)告中每經(jīng)過一個(gè)傳輸輪次后利用 Logger 輸出當(dāng)前網(wǎng)絡(luò)狀態(tài) class RenoController: def __init__(self): self.cwnd 1 # 初始窗口 self.ssthresh 65535 # 初始閾值 self.congestion_state slow_start # 當(dāng)前階段 def on_transmission_round_end(self): # 關(guān)鍵在每個(gè)輪次結(jié)束時(shí)強(qiáng)制輸出狀態(tài) logger.info(fROUND_END: cwnd{self.cwnd}, ssthresh{self.ssthresh}, state{self.congestion_state}) def on_timeout(self): self.ssthresh max(2, self.cwnd // 2) # 乘法減小 self.cwnd 1 self.congestion_state slow_start self.on_transmission_round_end() # 觸發(fā)狀態(tài)輸出 def on_fast_recovery(self): self.cwnd self.ssthresh 3 # 快恢復(fù)初始化 self.congestion_state fast_recovery self.on_transmission_round_end()提示on_transmission_round_end()的觸發(fā)時(shí)機(jī)必須精準(zhǔn)——不是每次發(fā)包而是當(dāng)本輪次所有允許發(fā)送的包≤cwnd均已發(fā)出且無新ACK到達(dá)時(shí)。常見做法是維護(hù)一個(gè)round_packets_sent計(jì)數(shù)器每發(fā)一個(gè)包1當(dāng)收到ACK且round_packets_sent 0時(shí)檢查是否本輪所有包均已確認(rèn)如ack_seq round_start_seq cwnd。這個(gè)鉤子讓log從“事件流”變成“狀態(tài)時(shí)序圖”是理解Reno動(dòng)態(tài)的核心技術(shù)杠桿。3. Log文件的逆向解碼術(shù)從原始文本到協(xié)議狀態(tài)機(jī)四類關(guān)鍵字段的提取規(guī)則與語(yǔ)義映射3.1 時(shí)間戳字段如何用毫秒級(jí)精度定位超時(shí)重傳的臨界點(diǎn)Reno擁塞控制中超時(shí)重傳是狀態(tài)切換的強(qiáng)信號(hào)。但log中的時(shí)間戳格式混亂如[12:05:03]或1723456789.123需統(tǒng)一解析才能計(jì)算RTT。import re from datetime import datetime def parse_timestamp(log_line): # 匹配兩種常見格式 pattern1 r\[(\d{2}:\d{2}:\d{2}\.\d{3})\] # [12:05:03.210] pattern2 r(\d\.\d) # 1723456789.123 match1 re.search(pattern1, log_line) if match1: # 轉(zhuǎn)換為datetime對(duì)象需補(bǔ)全年月日 t_str match1.group(1) dt datetime.strptime(t_str, %H:%M:%S.%f) return dt.timestamp() # 返回秒級(jí)浮點(diǎn)數(shù) match2 re.search(pattern2, log_line) if match2: return float(match2.group(1)) raise ValueError(f無法解析時(shí)間戳: {log_line}) # 應(yīng)用示例定位RDT 3.0超時(shí)重傳 with open(rdt30_log.txt) as f: lines f.readlines() for i, line in enumerate(lines): if TIMEOUT in line: timeout_ts parse_timestamp(line) # 查找前一個(gè)SEND事件 for j in range(i-1, -1, -1): if SEND in lines[j]: send_ts parse_timestamp(lines[j]) rtt timeout_ts - send_ts print(f重傳RTT: {rtt:.3f}s) # 精確到毫秒 break參數(shù)說明pattern1處理課程實(shí)驗(yàn)常用的時(shí)間格式.f匹配微秒實(shí)際log中常為毫秒但保留精度pattern2處理Unix時(shí)間戳需確保log中無歧義如不與seq_num沖突parse_timestamp()返回統(tǒng)一浮點(diǎn)秒值便于跨log文件對(duì)比RTT趨勢(shì)3.2 序列號(hào)字段如何從seq_num推導(dǎo)出cwnd的實(shí)際承載量Reno的cwnd是字節(jié)窗口但log中pkt_seq5是包序號(hào)。需建立包序號(hào)→字節(jié)偏移映射才能驗(yàn)證cwnd是否合規(guī)。# 假設(shè)MSS1460字節(jié)以太網(wǎng)標(biāo)準(zhǔn) MSS 1460 def seq_to_bytes(seq_num, base_seq0): 將包序號(hào)轉(zhuǎn)換為字節(jié)偏移 return (seq_num - base_seq) * MSS # 示例log中連續(xù)發(fā)送pkt_seq1,2,3,4 → 實(shí)際字節(jié)范圍[0, 5840) # 若cwnd4則最大允許字節(jié)偏移4*MSS5840與log一致 # 若log中出現(xiàn)pkt_seq5但cwnd4 → 協(xié)議違規(guī)需檢查發(fā)送邏輯關(guān)鍵邏輯Reno要求next_seq_num ≤ last_ack_seq cwnd單位包數(shù)但真實(shí)TCP以字節(jié)為單位。實(shí)驗(yàn)中若固定MSS則包序號(hào)可線性映射字節(jié)。報(bào)告中未提MSS值但根據(jù)以太網(wǎng)幀限制默認(rèn)取1460是安全假設(shè)若實(shí)驗(yàn)指定其他值如512需在解析前修正MSS。3.3 狀態(tài)標(biāo)記字段如何用正則捕獲log中隱含的擁塞狀態(tài)切換Reno狀態(tài)切換無顯式標(biāo)記但可通過事件組合推斷事件組合推斷狀態(tài)依據(jù)TIMEOUTcwnd1慢開始重啟RFC 5681: 超時(shí)后cwnd重置為13 DUPACKcwndssthresh3快恢復(fù)啟動(dòng)RFC 5681: 收到3個(gè)重復(fù)ACK進(jìn)入快恢復(fù)cwnd值穩(wěn)定增長(zhǎng)且 ssthresh慢開始cwnd指數(shù)增長(zhǎng)每RTT翻倍cwnd值線性增長(zhǎng)且 ssthresh擁塞避免cwnd線性增長(zhǎng)每RTT1# 從log中提取狀態(tài)切換證據(jù)需配合前面的狀態(tài)快照 def detect_congestion_state(log_lines): states [] for line in log_lines: if TIMEOUT in line and cwnd1 in line: states.append((slow_start, timeout_reset)) elif DUPACK in line and cwnd in line and 3 in line: states.append((fast_recovery, triple_ack)) elif re.search(rcwnd(\d), ssthresh(\d), line): match re.search(rcwnd(\d), ssthresh(\d), line) cwnd, ssthresh int(match.group(1)), int(match.group(2)) if cwnd ssthresh: states.append((slow_start, cwnd_lt_ssthresh)) else: states.append((congestion_avoidance, cwnd_ge_ssthresh)) return states # 輸出示例[(slow_start, timeout_reset), (congestion_avoidance, cwnd_ge_ssthresh)]3.4 錯(cuò)誤類型字段位錯(cuò)、ACK丟失、包丟失的log特征指紋庫(kù)不同錯(cuò)誤在網(wǎng)絡(luò)層表現(xiàn)不同log中需用不同關(guān)鍵詞標(biāo)識(shí)錯(cuò)誤類型log關(guān)鍵詞典型上下文協(xié)議影響位錯(cuò)checksum_fail,corrupted[10:00:01] RECV pkt_seq5 → checksum_fail接收端丟棄包不發(fā)ACKACK丟失timeoutno_ACK_received[10:00:02] TIMEOUT pkt_seq5, no_ACK_received發(fā)送端重傳可能造成冗余包丟失pkt_seq5_missingnext_ACK_is_7[10:00:03] RECV ACK_seq7, pkt_seq5_missing觸發(fā)快恢復(fù)若3個(gè)DUPACK# 構(gòu)建錯(cuò)誤統(tǒng)計(jì)腳本快速診斷l(xiāng)og質(zhì)量 $ awk /checksum_fail/{c} /timeout.*no_ACK/{t} /pkt_seq[0-9]_missing/{m} END{print 位錯(cuò):,c,超時(shí):,t,丟包:,m} rdt_log.txt 位錯(cuò): 2 超時(shí): 5 丟包: 1避坑 / 常見問題 / 排查 / 注意現(xiàn)象1log中cwnd值始終為1無法進(jìn)入擁塞避免原因慢開始閾值ssthresh被錯(cuò)誤初始化為極小值如1導(dǎo)致cwnd永遠(yuǎn) ssthresh解決檢查初始化代碼確保ssthresh初始值≥cwnd通常設(shè)為65535或MSS×10現(xiàn)象23 DUPACK事件在log中不存在但報(bào)告聲稱觸發(fā)了快恢復(fù)原因log記錄粒度不夠只記錄最終ACK未記錄中間重復(fù)ACK解決修改接收端代碼在if ack_seq expected_seq前添加if ack_seq in dup_ack_buffer: log(DUPACK, ack_seq)現(xiàn)象3TIMEOUT時(shí)間間隔遠(yuǎn)小于RTT均值如RTT100mstimeout20ms原因定時(shí)器未采用EWMA而是固定值如timeout 50解決實(shí)現(xiàn)RFC 6298的RTT估算TimeoutInterval EstimatedRTT 4*DevRTT現(xiàn)象4選擇響應(yīng)協(xié)議log中ACK序號(hào)跳躍如ACK_seq1,3,5但DATA包連續(xù)原因接收端未正確處理失序包直接丟棄而非緩存解決在接收端添加out_of_order_buffer對(duì)pkt_seq expected_seq的包暫存待缺失包到達(dá)后重組現(xiàn)象5Reno log中ssthresh在快恢復(fù)后未更新仍為舊值原因快恢復(fù)退出條件錯(cuò)誤如收到新ACK即退出而非收到original_ack解決RFC 5681規(guī)定快恢復(fù)在收到original_ack即丟失包的ACK后退出此時(shí)ssthresh cwnd4. 從報(bào)告到可運(yùn)行代碼五個(gè)模塊的Python實(shí)現(xiàn)要點(diǎn)與參數(shù)配置表4.1 RDT 2.0發(fā)送端ACK隊(duì)列管理的三個(gè)致命陷阱RDT 2.0發(fā)送端最易出錯(cuò)的是ACK隊(duì)列管理。以下是核心實(shí)現(xiàn)與避坑指南# 正確的ACK隊(duì)列管理避免內(nèi)存泄漏與狀態(tài)錯(cuò)亂 class RDTSender20: def __init__(self): self.ack_queue [] # 存儲(chǔ)待確認(rèn)的seq_num self.sent_packets {} # {seq_num: packet_data}用于重傳 self.timers {} # {seq_num: timer_obj} def send(self, packet, seq_num): self.ack_queue.append(seq_num) self.sent_packets[seq_num] packet self.start_timer(seq_num) def receive_ack(self, ack_seq): # 關(guān)鍵必須先檢查ack_seq是否在隊(duì)列中再移除 if ack_seq in self.ack_queue: self.ack_queue.remove(ack_seq) # 移除成功 self.cancel_timer(ack_seq) # 取消對(duì)應(yīng)定時(shí)器 del self.sent_packets[ack_seq] # 清理內(nèi)存 # 若ack_seq不在隊(duì)列中說明是重復(fù)ACK或舊ACK靜默丟棄 def timeout_handler(self, seq_num): if seq_num in self.ack_queue: # 確保只重傳未確認(rèn)包 self.resend_packet(seq_num) self.start_timer(seq_num) # 重置定時(shí)器參數(shù)配置表參數(shù)推薦值說明修改影響timer_interval1.0秒初始超時(shí)值過小導(dǎo)致頻繁重傳過大降低吞吐max_retransmit3次單包最大重傳次數(shù)超過則放棄需上層處理ack_queue_max_size1024隊(duì)列最大長(zhǎng)度防止內(nèi)存溢出需匹配cwnd4.2 RDT 2.2校驗(yàn)和16位反碼和的Python實(shí)現(xiàn)與邊界測(cè)試校驗(yàn)和算法必須與接收端完全一致否則ACK校驗(yàn)必?cái)ef calculate_checksum(data): RFC 1071標(biāo)準(zhǔn)16位反碼和 data: bytes對(duì)象 if len(data) % 2 1: data b\x00 # 補(bǔ)零使長(zhǎng)度為偶數(shù) checksum 0 for i in range(0, len(data), 2): word (data[i] 8) data[i1] checksum word checksum (checksum 0xffff) (checksum 16) # 進(jìn)位折疊 return ~checksum 0xffff # 邊界測(cè)試驗(yàn)證位錯(cuò)檢測(cè)能力 def test_checksum(): original bHello, world! corrupted bHello, worlx! # 修改一個(gè)字節(jié) assert calculate_checksum(original) ! calculate_checksum(corrupted) print(校驗(yàn)和測(cè)試通過)關(guān)鍵參數(shù)data[i] 8高位字節(jié)左移8位構(gòu)成16位整數(shù) 0xffff截?cái)喔?6位保留低16位~checksum 0xffff取反后掩碼確保結(jié)果為16位無符號(hào)數(shù)4.3 RDT 3.0定時(shí)器基于EWMA的RTT估算器實(shí)現(xiàn)固定超時(shí)值無法適應(yīng)網(wǎng)絡(luò)變化必須動(dòng)態(tài)調(diào)整class RTTEstimator: def __init__(self, alpha0.125): self.EstimatedRTT 1.0 # 初始值1秒 self.DevRTT 0.1 # 初始偏差 self.alpha alpha def update(self, SampleRTT): # RFC 6298更新公式 self.EstimatedRTT (1 - self.alpha) * self.EstimatedRTT self.alpha * SampleRTT self.DevRTT (1 - self.alpha) * self.DevRTT self.alpha * abs(SampleRTT - self.EstimatedRTT) def get_timeout(self): return self.EstimatedRTT 4 * self.DevRTT # 使用示例 estimator RTTEstimator() estimator.update(0.120) # 第一次RTT測(cè)量120ms estimator.update(0.080) # 第二次80ms print(fTimeout: {estimator.get_timeout():.3f}s) # 輸出約0.280s參數(shù)說明alpha0.125RFC推薦值平衡歷史與當(dāng)前RTT權(quán)重4 * DevRTT提供足夠余量應(yīng)對(duì)RTT波動(dòng)SampleRTT必須是精確測(cè)量值如recv_time - send_time4.4 Reno擁塞控制器四狀態(tài)機(jī)的Python實(shí)現(xiàn)Reno狀態(tài)機(jī)必須嚴(yán)格遵循RFC 5681class RenoController: def __init__(self, init_cwnd1, init_ssthresh65535): self.cwnd init_cwnd self.ssthresh init_ssthresh self.state slow_start self.dup_acks 0 # 重復(fù)ACK計(jì)數(shù) def on_ack_received(self, is_duplicateFalse): if is_duplicate: self.dup_acks 1 if self.dup_acks 3: self._enter_fast_recovery() else: self.dup_acks 0 if self.state slow_start: self.cwnd 1 # 每收到一個(gè)新ACKcwnd1包數(shù) elif self.state congestion_avoidance: self.cwnd 1 / self.cwnd # 每RTT增加1個(gè)MSS近似為1/cwnd def _enter_fast_recovery(self): self.ssthresh max(2, self.cwnd // 2) self.cwnd self.ssthresh 3 self.state fast_recovery def on_timeout(self): self.ssthresh max(2, self.cwnd // 2) self.cwnd 1 self.state slow_start狀態(tài)遷移表當(dāng)前狀態(tài)觸發(fā)事件新狀態(tài)cwnd更新slow_start收到新ACKslow_startcwnd 1slow_start收到3 DUPACKfast_recoverycwnd ssthresh 3fast_recovery收到original ACKcongestion_avoidancecwnd ssthreshcongestion_avoidance超時(shí)slow_startcwnd 14.5 日志注入器強(qiáng)制輸出cwnd/ssthresh的鉤子框架報(bào)告中“每輪次輸出狀態(tài)”的需求需在協(xié)議棧關(guān)鍵路徑插入import logging # 配置日志格式與報(bào)告log風(fēng)格一致 logging.basicConfig( levellogging.INFO, format[%(asctime)s] %(message)s, datefmt%H:%M:%S ) class LoggingHook: staticmethod def log_state(cwnd, ssthresh, state, eventROUND_END): logging.info(f{event}: cwnd{cwnd}, ssthresh{ssthresh}, state{state}) # 在RenoController中調(diào)用 def on_transmission_round_end(self): LoggingHook.log_state(self.cwnd, self.ssthresh, self.state)配置要點(diǎn)datefmt%H:%M:%S匹配報(bào)告中[12:05:03]格式eventROUND_END可替換為TIMEOUT、FAST_RECOVERY等增強(qiáng)log語(yǔ)義日志級(jí)別設(shè)為INFO避免DEBUG級(jí)噪音干擾分析5. 把報(bào)告變成你的調(diào)試?yán)饔胠og反推協(xié)議缺陷的三步驗(yàn)證法與血淚經(jīng)驗(yàn)5.1 第一步構(gòu)建log基線——用已知正確行為生成黃金樣本拿到一份新log別急著分析先用可控環(huán)境生成黃金樣本。我一般會(huì)這樣做在無丟包、低延遲的本地環(huán)回網(wǎng)絡(luò)127.0.0.1運(yùn)行RDT 2.0生成100行l(wèi)og手動(dòng)驗(yàn)證grep SEND log | wc -l應(yīng)等于grep RECV log | wc -l無丟包時(shí)收發(fā)包數(shù)一致提取cwnd序列g(shù)rep cwnd log | awk -F {print $2} | cut -d, -f1應(yīng)呈現(xiàn)慢開始的指數(shù)增長(zhǎng)1,2,4,8...保存此log為baseline_rdt20_clean.log后續(xù)所有分析都以此為參照。血淚經(jīng)驗(yàn)曾有學(xué)生用虛擬機(jī)橋接網(wǎng)絡(luò)跑實(shí)驗(yàn)log中TIMEOUT頻發(fā)以為是代碼bug實(shí)則是VM網(wǎng)絡(luò)驅(qū)動(dòng)導(dǎo)致RTT虛高。用環(huán)回網(wǎng)絡(luò)跑出baseline后對(duì)比發(fā)現(xiàn)EstimatedRTT在VM中比物理機(jī)高3倍——問題根源在環(huán)境不在代碼。從此我養(yǎng)成了每次換環(huán)境必先跑baseline的習(xí)慣。5.2 第二步差分分析——用diff工具定位協(xié)議退化點(diǎn)當(dāng)log異常時(shí)用diff對(duì)比baseline與故障log聚焦三類差異# 生成差異報(bào)告 $ diff baseline_rdt20_clean.log rdt20_faulty.log diff_report.txt # 關(guān)鍵搜索模式用grep快速定位 $ grep -E (timeout|cwnd1|dupack) diff_report.txt [10:00:01] TIMEOUT pkt_seq5 [10:00:01] RECV ACK_seq5三類高價(jià)值差異超時(shí)位置偏移baseline中TIMEOUT pkt_seq10故障log中TIMEOUT pkt_seq5→ 說明定時(shí)器過早觸發(fā)檢查RTT估算cwnd重置異常baseline中cwnd8后升至16故障log中cwnd8后突降至1→ 檢查是否誤觸發(fā)超時(shí)ACK序列斷裂baseline中ACK_seq1,2,3,4連續(xù)故障log中ACK_seq1,2,4→ 說明ACK丟失檢查接收端ACK發(fā)送邏輯。5.3 第三步狀態(tài)回溯——用log事件重建TCP狀態(tài)機(jī)快照Reno的精髓在于狀態(tài)遷移而log是唯一線索。我習(xí)慣用Excel手動(dòng)構(gòu)建狀態(tài)時(shí)間軸時(shí)間戳事件cwndssthresh狀態(tài)推斷依據(jù)10:00:00SEND pkt_seq1165535slow_start初始值10:00:00.1RECV ACK_seq1265535slow_start新ACKcwnd110:00:00.2RECV ACK_seq2465535slow_start指數(shù)增長(zhǎng)10:00:00.3TIMEOUT pkt_seq5132767slow_start超時(shí)ssthreshcwnd//2關(guān)鍵技巧用顏色標(biāo)注狀態(tài)綠色slow_start黃色congestion_avoidance紅色fast_recovery計(jì)算cwnd增長(zhǎng)率相鄰行cwnd差值慢開始應(yīng)≥1擁塞避免應(yīng)≈0.001因1/cwnd很小標(biāo)記“幽靈事件”log中未記錄但必然發(fā)生的事件如pkt_seq3丟失用斜體注明。從那以后我每次分析log都強(qiáng)制走一遍這三步先跑baseline再diff定位最后手繪狀態(tài)軸。不是為了炫技而是因?yàn)門CP協(xié)議的狀態(tài)依賴太強(qiáng)——一個(gè)ACK丟失可能引發(fā)后續(xù)10個(gè)狀態(tài)錯(cuò)誤只有拆解到原子事件才能揪出真正的根因。這份報(bào)告的價(jià)值正在于它用樸素的log記錄逼你直面協(xié)議設(shè)計(jì)的每一個(gè)決策點(diǎn)。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
亚洲综合夜色| 91五十路| 久久性生大片免费观看性| 精品偷拍13p欧美dodk视频| 欧美亚男人的天堂| 校园春色五月天| 激情五月婷| 亚洲色综网| 日韩,欧美,中文在线| 亚洲男人的天堂网| 综合 欧美 亚洲 日本| 亚洲色情在线影视| 国产精选三级在线观看| 男人的天堂com| 色婷婷影院| 俞拍久久国应视频| 色综合91| 盗摄女人妻在线| 欧洲小说色图视频另类| 欧美极品性爱天天射| 嗯嗯啊啊好疼| 日韩精品免费高清视频在线| 超碰97欧美日韩| 亚洲国产高清福利视频| 天天日天天看| 九九热超碰97亚洲最新香蕉 | 亚洲无码99| 97狠狠| 综合婷婷| 大香蕉免费3| 欧美韩国你懂得在线| 中国少妇XXXX做受| 日韩91网| 91色综合激情| 日本在线视频导航| 97香蕉网| 日本久久999| 五月婷婷激情网| 人妻铁牛TV| 亚洲色图加勒比| 上海一级黄片| 国产精品网址| 久干网| 懂色AV蜜臀无码精品APP| 麻豆一区二区三区在线看| 欧美国产日韩清纯唯美| 老司机深夜18禁污污网站| 伊人久久亚洲色欲综合网站| 久日91在线| 天天综合中文字幕 91| 人妻出轨一区二区三区| 香蕉人欧美综合| 在线视频一区二区传媒| 玖玖玖玖精品国产剧情| 久草资源在线| 色眯眯av| 神马久久久久久久久久久久| 超碰九色| 综合久久久久久久综合网| 色情婷婷久久五月天| www.婷婷六月天| 丰满人妻一区二区三区性色| 久操国产在线| 天天射夜夜| 水野优香在线观看| 人人插人人摸人人| 操屄日韩| A级国产欧美激情在线| 国产蜜臀在线| 欧美精品双插| 国产SV一线| 丁香五月天堂网| 可以在线观看AV的网站| 国产精品永久免费10000| 欧美手机在线综合| 99九九久久| 岛国片国产成人亚洲播放| 十八禁啪啪视频| 九九热精彩视频| 日韩另类色图| 天天色综合天天操| 在线免费观看日韩一区| 欧美色涩| 草b在线| 日韩乱插| 亚洲第一狼人丝袜美女另类 | 99在线无码精品秘 入口黑人| 亚洲黄色电影| 91模特在线观看| 艾草av| 亚洲天堂综合AV| 亚洲成?V人片在线观看福利| 日韩欧美午夜视频在线| 秋霞影音一区二区三区| 久久精品日韩| 九九色逼| 欧美激情综合| 99视频内射三四| 国产自产一区视频在线| 日日日日做夜夜夜夜无码| 日韩啊V| 欧美92| 一本一道久久综合久久| 欧美成人精品一区二区男人蜜臀| Julia Annxxxxx| 久热精品在线| 美国一区二区免费视频| 久久国内| 五月丁香婷婷色| 中日无幕一二三四区| 26uuu欧美| 色婷婷五月天| 99青草| 国产玖玖| 午夜久久一区二区无码中出| 999综合色| 亚洲精品美女操逼| 丰满少妇精品一区二区| 噜噜噜噜久久久精品免费| 老鸭窝成人| 视频在线观看青青99国产| 欧美亚洲清纯| 色爱天堂| 国产综合日韩伦理| 天天日天天搞天天干| 思思视频免费看网站| 蜜乳av一区二区| 欧美天天干| 人人爱人人操人人性| av日韩在线观看电影| 人人摸人人干人人拍97| 激情文学网伊人| 黄色小说亚洲| 久久人妻一区二区三区高清| 天天天干977| 欧洲人妻视频| 人人玩人人添人人澡免费| 欧美日日操| 久久精品店| 婷婷在线精品| 亚洲综合在线高清| 久久久久久久久国产| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 亚洲成熟国产精品美女| 久久精品99| 97久久精品亚洲| av大香蕉网站| 日日躁狠狠躁天天躁精品| 无码粉嫩白虎一线天b区| 一二三区精品视频| 人人摸人人摸人人干| 婷婷色婷婷| 欧美午夜色妇色鬼| 四虎影视欧美| 精品国产丝袜一区二区三区乱码| 婷婷激情五月| 国产精品密臀网在线观看| 综合色久欲| 99热这里只有精品18| 在线色导航| 欧美少妇一区二区三区| 男人的天堂VA| 欧洲成人性爱视频| 欧美日韩人人精品| 在线看污网站| 操高情无码| 强上我不卡卡| av日韩在线观看电影| 狠狠 91| 日本999精品| 精品传媒在线一区| 91粉嫩萝控精品福利网站_精品影音先锋国| 欧美色图天堂在线| 欧美熟女逼久久久久久| 久久精品国产欧美日韩亚洲欧美日韩中文久久国产一区 | 三上制服丝AV| 男人的天堂2019| 丁香五月电影| 久久国产精品一级二级三级| 日韩一级欧美一级国产一级台湾| 亚洲精品精品一区二区| 黄色av播放免不| 操逼操逼操| 久久久久国产一区二| 97大色网| 伊人一级免费黄片| 老女人爆菊| 97人人草| 色妺妺AⅤ| 日韩性爱再线视频| 精品国产久久乱码| 天天操夜夜嗨| 超碰久在线天天做| 手机看片1025| 久久精品男人的天堂| 日本1区2区不卡视频| 久久侵犯人妻爽爽爽| 人爽不卡视频| 99热这里只有精| 欧美性性性| 久久婷婷影院| 男人久久天堂| 青娱乐亚洲热| 人妻久久一区二区三区 | 人妻熟女字幕一区二区| 久草免费在线视频| 韩国久久97| 葡萄牙性视频一二区| 五月丁香六月婷综合成人综合 | 久久女同性恋一二区| 免费看黄片现成| 嗯嗯啊啊用力视频免费| 91亚洲情色| 亚洲另类综合欧美| 97干97色| 久久久久网站-538在线视频-欧美永久乱码 | 日本3级一区二区免费| AV色五月| 国产剧情一区在线观看| 妇女性内射冈站HDWWWCOM| 成年男人的天堂| 色色毛片| 91天天爱| 婷婷丁香成人| 国产精品无码久久久久2025| 麻豆精品三区视频| 中文字幕在线观看视频www| 欧美BT 亚洲色图| 夜夜高潮夜夜爽夜夜爱爱一区| 亚洲成av人片色午夜乱码| 无套后入双马尾| 久久精品视-一级做a爰片性色毛片16美国-中国女与老外在线精品 | 91麻豆天美传媒HD| 中文字幕在线观看网址| 亚洲色图自拍| 国语精品内射在线观看| 玖玖爱视频网站| 色综合美国| 国产一级内射无挡观看| 欧美日韩亚洲少妇寂寞影院正在播放 | 蜜臀99久久| 熟女一区二区三区| 99久久久久| 久久的免费性爱视频| 性色av一区二区| 久久AV无码网址| 爱逼综合| 免费视频观看60秒| 国产一区二区久久| 一区二区三区 丝袜 高跟 美腿| 亚洲国产精品成人综合| 久久久96精品| 精品999日本| 色婷婷狠狠| 亚洲天堂日本| 麻豆福利视频导航| 色色色色色色色色色色色色色色综合 | 少妇人妻激情四射| 亚洲色欲一区二区三区| 欧美日韩第一页| 秋霞操逼片| 欧美的精品的视频| 一二视频神马久久传媒| 天天澡天天爽日日av| 天天干少妇| 天天做日日做天天欢。| 51国产午夜精品视频| 51一区二区三区| 国模不卡一本二本三电影| 少妇滛荡视频| 欧美性爱www免费版| 日韩三级在线观看网站| 91高清欧美| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 极品色社| 欧美顶级黄片AAAAA在线免费看 | 高清无码人妻久久久一区二区三区aⅴ| 熟女AV一区| 精品久久久久,69国产成人精| 欧美人妻一区| 密乳无码| a一区二区三区乱码在线| 成人线上超碰| 国内精品嫩模A∨私拍小视频| 极品出轨视频网站| 色悠悠伊人网五月天| 日本超碰色精品| 99精品热| 97青娱乐超碰久久| 男女激情中文字幕| 天美传媒Av在线| 大香蕉伊人在线成人AV在线观看| 蜜桃视频精品一区二区| 亚洲日产专区| 欧美不卡在线美女| 国产精品久久发布| 久久九七| 一直超碰| 超碰 欧美| 亚洲图片视频小说| 91精片| 加勒比综合88| 国产精品视屏| 欧亚无码视频| 国产极品精品美女视频| 日韩激情啪啪啪| 视频在线观看免费一区二区三区| 国产www色在线观看| 综合免费无码中文| 爱做久久久久久| 97在线精品| 天天干少妇| julia高潮后不停追击中出| 丁香激情五月| 亚洲丝袜B诱惑| 好看的91视频| 亚洲日韩乱码中文无码蜜桃臀网站 | 婷婷综合网站| 欧美专利1区2区3区4区5区免费| AV老汉| 97在线无精品| 一本大道青青| 欲香欲色| 99久久久er直播网址| 动漫爆乳3D奶水一区在线观看| 久操精品网| 四虎AV无码| 欧美日韩国产人人| 欧美天天综合网| 先锋激情∨在线视频播放| 93人人操人人| 精品国产乱码久久久久久久久1| 四虎AV无码| 狠狠躁天天躁日日躁97| 天天激清| 丰满人妻一区二区三区大胸懂色| 大胆91| 目产99999久久999| 97在线免费观看| 天天操天天射天天日| 亚洲欧美日韩夜夜| 日日夜夜青青草母狗| 俺去啦自拍| 91亚洲色图| 久久久国产精品亚洲精品| 国产热RE99久久6国产精品首 | 九九九色| 亚洲最大的综合性av| 91丨九色丨东北熟女| 欧美色图私拍91| 成人开心网在线视频| 亚洲美女av无码| 99热在线观看| 精品人妻一区二区免费蜜桃| 啊啊啊啊无码| 99久久久无码国产精品性男| 国产a级精品| 中国熟妇| 牛黄色久午久| 天天舔天天日天天射| 香蕉人欧美综合| 99久久九九| 日韩精品作爱导航| 亚洲伊人久久综合97| 久久久久9| 精品人妻伦一区二区三区久久| 亚洲色吧网| 91精品操美女| 午夜后入| 蜜乳成人AV| 色色国产| 99福利社| 欧美亚洲另类在线蜜桃| 97亚洲欧美日韩| 中文操逼字幕| 一二三啪啪专区| 亚洲狠| 亚洲操逼无码| 国产91丝袜 在线播放| 91超碰人人操| 亚洲欧美内射| 免费看一级a性色生活片久久无| 97色涩| 国产h小视频在线观看免费| 日韩精品中文字幕二区| 超碰97人妻自拍| 欧美日韩操逼嗦吊| 99精品综合久久久久五月天| 91天堂色男人的天堂| 天天舔天天日天天射| 人妻偷拍一区二区三区| 歐美一級亂黃99在綫精品| 亚洲精品九九九| 天天日夜夜| 97色操| 久操婷婷| 啊啊啊想要| 九九久久一区二区三区| 欧美一级美片在线观看免费| 男人天堂综合| 午夜寂寞欧美| 97久久超碰亚洲| 啪啪啪大香蕉| 亚洲 无码 偷拍| 少妇同性| 欧美系列在线一区二区| 97超碰伊人| 亚洲人妻色图| 五月激情在线| 日韩精品在线视频,日韩精品……| 先锋精品av色鲁| 精品久| 国产一区二区三区不卡手机在线| 亚洲最新Av| 久久久久久久久久久久黄色 | 乱人乱色一区二区三区免费 | 日本免费中文字幕在线| 久久九九久精品国产尤物|国产精品爽黄69天堂A片潘金莲,国产亚洲精品第一综合 | 日本欧美m v精品网站加| 全球成人中文在线| 91丝袜美女视频| 偷拍亚洲高清图片| 操逼网免费无码视频| 亚洲综合在线第一页| 中文字幕在线观看第二页| 欧美不卡在线一区二区| 欧美激情一| 黑操B| 欧美性爱日韩性爱| 久久久久99精品成人片蜜臀| 久久夜色一区二区| 90后性网国产欧美| 婷婷在线视频在线观看| 亚洲风情综合网| 在线观看AV不卡| 777AV电影| 欧美色97| 亚洲综合69| 欧美另类色图片| 91社区拍啪人妻| 天天噜| 六月丁香网| 亚洲天堂日本| 思思热免费视频观看| 夜夜爽爽爽| 国产第11页| 精品人妻一区二区三区日产乱码| 国产亚洲色婷婷久久99精品91葵花宝典| 99色综合| 久操免费电影| 亚洲国产一级精品毛一级精品看免费视频| 久jiu久神马影院| 在线播放欧洲免费av| 家庭乱伦国产| 91黑丝少妇| 国产精品久久蜜乳av| 亚洲免费在线探花| 夜夜福利| 亚洲激情在线观看一区| 久久a久久| 欧美日韩小说| 乱老女人一区二区视频| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 五月丁香社区婷婷日韩欧美精品影院| 综合久久99亚洲人妻中文在线| 国产午夜精品理论片一二三区区| 韩国久久97| 91丝袜在线播放| 婷婷五月天基地| 亚洲综合嫩| 欧美成人精品A片免费一区99| 人人摸人人舔一区二区| 中国亚洲呦女专区| 精品视频一区二区| 99久热| 亚洲第一视频 欧美风情 日韩| 日本色色色视频| 中字一区| 久久九九综合| 国产激情视频一区区三区| 发朗少妇买婬全视频中文| 以及麻豆国产入口在线观看免费| 天天综合网在线观看| 久久99精品视频| 97在线视频观看免费| 在线v中文字幕一区二区三区 | 91制服丝袜| 9999久久久久| 亚洲学生妹高清av| 国内操逼视频二区| 成人激情无码在线视频| 超碰9 7女人| 99久久综合| 日日摸天天爽夜夜欢| 超碰久久性爱| 操逼www.| 91岛国动作片| 91日产欧美| 亚洲欧洲综合视频在线| 日韩国产精品人妻无码久久久| 欧美少妇一区二区三区| 一本一道vs波多野结衣| 东京热综合久久一区二区| 亚洲情色91| 91丨豆花丨熟女| 久操| 男人天堂.AB| 成年女人黄网站| 日韩97超碰| 超碰色中文| 国产伦乱91| 日韩性爱小视频| 91黑丝操| 欧美美女在线高潮999| 91成人久久| 在线97视频| 狠狠爱夜夜干| 国产久久日韩网站导航| 操99| 无码高清专| 成人久久久| 啊灬啊灬啊灬啊灬高潮奶出了免费视 | 色妇综合网| 亚洲欧洲日产国产综合网| 婷婷久月| 九月丁香综合网| 97啪啪| 亚洲久久天堂| 都市激情人妻一区二区青青操视频 | 啊啊啊啊啊操我视频| 免费一级欧美片片线观看| 精品无码一区二区三区色欲| 中国韩国明星一极片一区乱码毛片人妻熟女一区二区三区 | 国产农村一一级特黄毛片| 久久成年片色大黄全免费网站| 久久亚州大香蕉| 狠狠搞 亚洲91| 日韩一级二级| 日本高清久久| 国产欧美一区激情交| 操操逼操操逼操操逼逼| 国产传媒午夜理伦精品| 亚洲欧美综合| 97超碰色色| 欧美丝袜91| 精品一区99999| 日本黄色裸日本黄色裸体| 91狠狠综合久久久久久| 99精品在线播放| 伊人色综合网电影| 高跟丝袜AV专区国产| www.av在线视频| AV一起草在线| 麻豆视频国产一区二区| 亚洲天堂五月天国产| 国产传媒av天美传媒在线| 91老司机精品| 久久久555| 久草看看看| 超碰精品97| 国产91 丝袜在线播放| 欧洲色综合| 98超碰欧美| 99re视频在线播放青草| 久久久久久综合久久伊人蜜月| 91精品国产91久久久久久久久久久久| 久草线上视频免费看| 后入福利| 亚洲天堂资源在线| 曰韩人妻中文字幕在线| A片大香蕉在线| 欧美在线永久天堂| 神马麻豆福利院 | 插B在线观看| 噜噜瑟| 一区二区视频在看| 97亚洲精品| 性爱网站一区二区| 丰满人妻一区二区三区四区| 午夜理论片在线观看免费| 精品黑人一区二区| 久超碰在| 日韩在线97| 久久视频,这里只有精品 | 韩日无码在线观看| 69精品人人人人| 亚洲色图超碰在线| 麻豆天美制片厂网站视频| 色妇91| 九九操久久国产免费视频| 国产剧情在线| 欧美一级黄片视频在线| 激情五月天丁香社区| 色欧美天天| 狠狠夜色午夜久久综合在线| 亚洲欧美变态| 国产在线观看一区二区三区| 亚洲av综合色区无码一| 99综合网| 国产女人9999| 99无码狠狠久久| 亚洲成人一区二区精品| 激情六月天| 婷婷15月天青娱乐| 男人天堂新在线| 中国少妇XXXX做受| 亚洲少妇喷视频看| 超碰久久网| 秋霞午夜成人福利片片| 激情视屏国产乱伦强奸| 色综合中文字幕不卡| 加勒比综合a∨| 91久久久亚洲| 亚洲综合色网| 欧美亚洲高清不卡| a'v在线资源| 强奸xx国产| 91久久伊人婷婷青青草| 色噜噜狠狠色综无码久久合欧美| 日日操丁香五月天| 天天做天天爱天天爽AV| 综合欧美亚洲| 日本污ww视频网站| 91丨精品丨国产丨丝袜| 一区AV| 偷拍伦理视频| 国产麻豆91欧美一区二区久久婷婷国产精品 | 久久精品国产亚洲AV高清演员表| 久久婷婷一区二| 老熟乱一区二区三区四区| 十八禁av无码免费网站APP| 禁止观看美女黄| 大香蕉中文201| 亚洲欧美国产其他二区| 伊人色综合欧美| 天天插夜夜操| 伊人久久大香线综合无码| 日本久久女同性恋视频| 嗯嗯啊啊视频在线看| 四虎免费在线播放| 日本精品一区二区中文字幕| 久久久九精品| 日本操BAV| 乱码人妻一区二区三区| 色九月综合| japan日本高清乱xxxx| 天天综合网久久ww| 天天澡天天狠天天天做| 91狠婷| 日本操逼视频免费| 人人妻人人操人人乐| 在线不欧美| 欧美亚涩| 少妇厨房愉情理伦片bd在线观看| 91亚洲青青草原精品1区| 上特色A在线| 麻豆2区1区天美| 天天射夜夜操| 啊啊啊啊啊啊好湿好爽视频| 国产成人 综合亚洲 天堂| 91av天美性媒精品视频| a一区二区三区乱码在线| 91亚洲欧美色图| 男人高清无码一区二区| 四虎精品一区| 欧美操人| 立川理惠被中出无码| 性生活久久久久久久久久| 翔田千里无码中出中文字幕| 午夜毛片高清免费不卡| 插日本熟女视频| 久久97视频| 99r九九| 精品人体无圣光凹凸| 九九国产| 天天爱天天韩国日本牛牛牛牛| 欧美91在线| 香港日本韩国人妇99www.wccm20| 欧美老妇综合网| 久久国产熟女影院| 国产性爱欧美性爱在线| 久久有码视频| 丝袜制服字幕在线| 91足交| 欧美日韩久久精品爱爱| 欧美狠狠弄| 人人操人人摸人| 五十路熟女人妻一区二区三区四区五| 男人的天堂欧美| 无码国产精品午夜不卡(| 亚洲天堂男人的天堂| 激情综合av| 91综合在线| 九九综合久久中文字幕| 超碰99在线| 欧美婷婷久久| 天天爽天天| 一本大道不卡一二三区| 91性片| 啊啊啊好疼| 中文字幕精品人妻丝袜| 99久久精品国产高潮| 国产精品懂色tv影视免费观看| 九九九九97| 中文字幕乱碼在线| 欧美一级三级| 91精品无码人妻系列| 中文字幕久久婷婷丁香五月天| 很狠操| 久久精品一区| 婷婷五月天av| 免费一级毛片在线视频观看| 伊人网青青| 精品一区二区三区丰满熟女-亚洲欧美一区| 蜜臀久久久| 日本亚洲vr欧美不卡高清专区| 中文无线日韩一区| 97内射偷拍| 在线黄页看毛片| 久久久久9| 欧美大香蕉专区网| 久久免费99精品久久久久久| 97色97干| 中欧人妻丝袜中文字幕| 67914在线兔费成人视频| 久久一本大香蕉| 欧美美女在线高潮999| 日韩另类色图| 丝袜 亚洲 偷拍| 中文激情网| 黄色片大香蕉| 天天精品| 青青草丝袜在线视频| 日本视频一区二区三区| 国产一区二区三三视频| 亚洲国产精品成人综合| 午夜操一操| 国产剧情在线| 91成人18| 四虎国产精品永久在线囯在线| 丁香九月婷婷| 日韩999| 一区二区首页| 国产精品情侣啪啪| 色97| 91男女啊啊啊| 久久久久久久久久久人妻| 日韩pv中文| 中文字幕 av v| 啪啪视频mP4| 人妻碰碰碰碰碰碰| 国产自产91区13区| 91爰爱欧美| 偷拍五区| 女人18精品一区二区三区| 五月天人妻综合| 老熟女天天操| 国产精品国产精品国产| 乱欲视频| 国产东北女人在线视频| 久久激情亚洲精品无码?V| 久久亚洲精品成人av| 日韩无码专区| 97天天摸天天碰| 吉田爱美AV在线| 青青草日韩免费观看高清在线| 久久亚洲天堂| 96精品久久久久久久久| 久久永久无码人妻视频| 天天躁日日躁AAAAXXXX国产| 激情视屏国产乱伦强奸| 亚洲天堂久久| 欧美性暴力猛交XXXX| 狠狠爱夜夜干| 国产精品天堂| 神马久久久久久伦理片| 国产免费一区在线观看| 毛片视频白嫩| 国产人妻精品一区二区三区秋霞 | 日韩性爱一级片| 欧美少妇性乱| 亚欧操逼片在线观看 | 久久 国产精品 一区| 亚洲美女精品| 亚洲精品国产熟女久久久| 极品色综合| 都市久久精品激情亚洲| 丁香五月激情综合国产| 91视频观看网站| 欧美综合自拍亚洲综合图| 操逼A∨| 免费看久久久性性| 日本不卡码黄色| 精品十八在线观看| 欧洲综合无码| 99亚亚热| 97欧美色| 秋霞成人一级在线观看| 五月丁香网站| 91久久精品美女高潮喷水| 色吧5亚洲| 99色天堂| 在线色资源| 八戒午夜福利理论片| 伊人五月天| 精品欧美日韩在线观看| 欧美一区二区三区互相| 欧美成人精品A片免费一区99| 久久神马影院| 曰韩中文人妻视频| 99热91| 熟女91网| 一本久道在线综合视频| 德国一二三不卡| 久久精品28| 久久东京国产精品视频| 天美传媒AV国产在线| 伊人影院日本| 天美传媒av 在线| 美女t无毒不卡不卡| 午夜爽爽爽在线观看永久入口姬片| 色 婷97| 97操| 精品视频123区小说区| 久久高潮妇女视频| 丁香婷婷久久 | 国产免费操逼| 九九九久久久久| 视频一区二区三区精品| 岛国小电影| 中文字幕丰满子伦无码专区在线视频最新 | 日韩精品 资源| 天天色播| 91精品导航| 99性爱| 国产精品一区二区三| 激情综合婷婷| 国产日韩怡红院| 国产成人网址| 啊啊啊好舒服视频| 亚洲一区二区麻豆影院| 超碰九7| 美女黄页| 白丝被操91| 久久久久久九九九九-美女久久久久久久-成人AV | 免费观看成人www精品视频| 大稥蕉免费视频这里只有精品| 99精品九九九九九九| 日韩三级一区| 国产在线视频午夜精华在| 乱理日韩中文| 国产日韩欧美中文在线播放| 91五月天| 人、人、摸,人、人、草| 色九色久| 国产一区96在线| 偷拍 欧美 日韩| 伊人 俄罗斯 a v| 亚洲最大无码中文字幕网站| 日韩久久艹| 无码人妻精品一区二区中文| 日韩欧美偷拍美女视频| 高清无码 国产精品| 青青草国产一区二区三区| 激情综合婷婷| 亚洲欧美首页| 久久久久ab| 中国探花熟女| 69精品| 亚洲免费97免费| 乱伦3P视频| 欧美亚洲天天| 欧美一区二区传媒| 国产精品探花在线| 日韩小电影| 神马久久久久久久久久| 啪啪资源网| 夜夜黄| ′ !γ}丶。。久久精品欧美一区二区三区| 亚洲 欧美 日韩 国产一区二区| 热久久99999| www…国产操逼| 人妻天天爽天天爽三区| 熟妇高潮精品一区二区三区下载| 免费毛片在线播放| 日韩一级性爱无码| 夜夜高潮夜夜爽国产伦精品| 亚洲熟妇丝袜在线观看| 激情啪啪拍91| AVE乱伦| 国产精品久久久午夜夜伦鲁鲁| 欧美毛片在线网| 亚洲AV噜噜狠狠网址蜜桃动漫| 精品视频久久| 欧美激情久久久久| 欧美亚州手机在线| 综合操逼| 亚洲人体视频在线观看| 东北老熟女| 亚洲人91| 亚洲综合码| 120分钟婬片免费看| 午夜一级免费毛片| 超碰95| 9I1性色影院| 日本中文字幕一区| 毛片17S| 嗯嗯嗯好爽| 国产免费一区在线观看| 亚洲小电影免费涩涩成人在线高清| 久久精品国产亚洲av水密被窝| 综合久久99亚洲人妻中文在线| 骚货人妻偷情自拍在线视频| 无码九九| 人妻无码久久一区二区三区免费| 97精品国产97久久久久久| 日韩成人大片一区二区| 国产一区在线观看无码AV| 精品久久久久久中文字幕视频免费 | 五十路熟女在线不卡观看一区二区| 日韩一999精品| 亚洲男人的天堂亚洲| 精品人妻美妇91job| 在线观看AV片| 久草视频观看视频在线| 久久午夜鲁丝片| 欧美性xxxxx狂欢| 天天影视亚洲| 欧美亚洲今日在线| 婷婷人妻激情| 精品人妻高清麻豆av| 中文字幕免费看大片| 91色鬼| 玖玖视频在线资源一区二区三区| 熟妇熟女一区二区三区| 97色色,97综合| 青青草黑寡妇男人天堂| 人人喜人人妻| 91丝袜美腿网站| 性感女人网页在线观看视频| 久久欧美按摩999| 亚洲另类综合欧美| 亚洲第一页色| 精品四五区| 女人爽到高潮久久久| 日韩精品一二三四| 99青草| 久久9久9久99久9久9| 中日无幕一二三四区| xxx亚洲午夜天堂| 亚洲熟妇乱女区二区三区| 嗯嗯,啊啊,国产精品| 116美女午夜| 国产精品久久久蜜臀| 久久內射| 97视频在线视频| 欧美瑟综合| 麻豆成人影音在线| 草草电影院| 国产又色又粗又黄又爽| 亚洲精品人妻在线| 午夜欧美女人操逼| 99免费在线视频| 好湿好紧好爽 视频| 熟女自慰久久久| 嫩草黄页| 欧美se综合| 日韩性爱小视频| av绯色| 久操婷婷| 性色中出| 国产精品在线一区二区| 亚洲黄色电影| 日本东京热久久久电影| 黄色一区二区秘书性感| 激情综合网五月婷婷| 日韩丝袜人妻AV| 高清肉丝中文无码| 精品97久久| 91色人妻| 久热9| 自拍偷拍亚洲熟女妇人精品| 亚洲一区二区中文字幕| 大香蕉97久久| 亚洲天天影视色综合| 超碰色97| 亚洲AV无码AV吞精久久久久| 大奶啊啊好爽| 久久亚洲色图中文字幕| 四方色播| 性色av蜜臀av色欲aV| 一区二区偷拍拍视频| 91欧美综合在线| 9久在线视频只有精品| 天天色播亚洲综合网站| 91jk色拍| 老妇女91| 精品久久人妻成人网| 躁躁日曰躁2020| 亚洲综合在线第一页| 亚洲欧美91√| 99久久无码| 日本日逼视频网| 91精品丝袜久久久久久无码人妻| 嫩草91| 综合久久9| 国产呦精品一区二区三区下载| 香一区二区三区| 欧美最婬乱婬爆婬牲视频| 欧美在线永久天堂| 伊人久久88国产女| 蜜臀一二三区| 亚洲精品白浆高清久久久久久 | 青青操青娱乐| 人妻少妇精品无码专区二区密桃| 欧洲欧美视频一区二区| 小草精彩毛片| 精品97久久| 人成午夜免费大片| 久久久久9999精品九九九| 国产无码精品久久久久久| 99操| 久久久精品,3| 日本一本道A级黄色毛片试看60分钟| 亚洲影院小综合| 亚洲综合另类| 婷婷色一区| 久草新在线| 激情五月婷| 日韩一级二级三级| 国产亚洲99久久精品| 一级免费精品| 日本欧美亚洲高清在线看| 九九九影院| 欧美日韩日产免费网站看| 97香蕉人人乳| 影音先锋乱伦资源| 久久亚州高清| 日本黄大片在线观看视频| 中国农村熟妇毛片视频| 天天操天天干美女网址导航| 国产精品69人妻无码久久久| 午夜欧美神马久久久久| 粉嫩av平台| 97超碰色屌| 久久 国产 无码| 欧美精品久久96人妻无码| 国产精品人妻一区二区| yazhousetuoumei| 看免费一级在线播放毛片| 国产一级高跟丝袜| 欧美情色男人的天堂| 999精品国产高清一区二区| 亚洲免费日韩在线一区二区| 先锋影音av先锋一区| 75大香蕉| 蜜乳Av成人片网站| 欧洲精品一二三在线| 极品美女福利在线观看| 欧美线天码中字| 在线视频一区二区传媒| 久久偷偷色综合蜜桃| 精品十八在线观看| 精品久久久久久AV无码| 亚洲综合在线高清| 99精品国产户外露出| 国产精品亚洲四五区在线观看| 少妇高潮流水av免费| 超碰1997| 丁香五月自拍| 欧美裸体美女日麻屄| 日韩不卡码| 日本日皮视频逼| 啊啊啊爽爽| 久久久18禁| 国产成人精品日本亚洲语言| 肥佬影院91| 人人摸人人干| 大地资源在线观看中文第二页| 四方色播| 欧美亚洲日韩16色| 超碰精品在线| 在线αⅴ| 97免费视频在线观看视频| 开心五月天激情网| 老司机深夜18禁污污网站| 国模91| 欧美日不卡| 欧美极品性爱天天射| 亚洲高清欧美总合| 91在线丝袜视频| 99在线精品视频| 91午夜无码| 亚洲天堂男人网| 久操影视| 国产精品肉丝自拍| 亚洲偷拍自拍在线视频| av黄图片在线观看| 大干人妻| 啊啊啊好舒服好爽啊啊啊视频| 欧美在线干| 亚州操逼图| a片久久久久久久久久久久 | 成人情色综合网| 婷婷香蕉| 欧美少妇性爱网站| 欧美一区二区三区不卡高清视频| 天天爽入口| 久久 亚洲 日韩 人妻| 伊人成人中文字幕久久网| 中国乱伦一区二区| 久久精品国产欧美日韩亚洲欧美日韩中文久久国产一区 | 丰满人妻一区二区三区在线| 亚洲最大网站av| 国产亚洲日韩欧| 美女黄网| 久久精品超碰| 老鸭窝在线视频播放| 久久一本大香蕉| 亚洲码和欧洲精品激情系列| 亚洲无套久久嗯嗯| 色婷婷网| 3p国产欧美99热| av日韩在线观看电影| www.av在线视频| 五十路六十路七十路熟婆| 五月婷亚洲精品天堂| 美欧色综合| 婷婷丁香人妻| 一区二区三区男人的天堂| 日本天天干天天搞一区| 国产一区麻豆免费观看| 91亚洲青青草原精品1区| 人妻啊啊人妻啊| 亚洲日韩一区电影| 丁香五月天视频| 五月激情影院| 另类天堂| 涩涩五月天| 五月香婷婷| 亚洲天堂区| 国产玖玖| 91久久久久久久久久久| 亚州操操穴网| 日本不卡高清免v欧美日韩在线观看| 夜夜爽爽爽| 亚洲日韩肥臀视频在线观看| 亚洲青青青视频在线| av在线人气| 青青草精品| 裸体1区| 大香蕉92| 久热精品在线| 97天天| 日本在线观看网址| 亚洲电影中字一区二区| 午夜.DJ高清在线观看免费7| 久久五月天婷婷丁香中文字幕| 无码操逼网| 99ri精品|