Score:1

แพ็กเก็ต TCP แบ่งออกเป็น ACK และ PSH,ACK ใน Docker

ธง es

ฉันกำลังทำงานกับเซิร์ฟเวอร์เกมที่ใช้ TCP เป็นหลัก และเพิ่งพยายามเรียกใช้ในคอนเทนเนอร์ Docker อย่างไรก็ตาม ฉันสังเกตว่าเมื่อเข้าถึงเซิร์ฟเวอร์ในคอนเทนเนอร์ (ผ่านไคลเอนต์เกม) แพ็กเก็ตสำหรับ SeqNo ทุกอันจะถูกแบ่งออกเป็นสองส่วน ส่วนแรกคือ TCP-ACK ที่ว่างเปล่า (ไม่มีเพย์โหลด) ส่วนที่สองคือ TCP,PSH-ACK ที่มีเพย์โหลดทั้งหมด เนื่องจากรูปแบบนี้ใช้กับแพ็กเก็ตทั้งหมดที่ส่งจากหรือไปยังเซิร์ฟเวอร์ จึงเห็นได้ชัดว่าเป็นของคู่กัน

เหตุใดสิ่งนี้จึงเกิดขึ้น และยิ่งกว่านั้น ทำไมสิ่งนี้จึงเกิดขึ้นเมื่อเซิร์ฟเวอร์ทำงานในคอนเทนเนอร์ Docker เท่านั้น

mforsetti avatar
tz flag
สิ่งนี้ตอบคำถามของคุณหรือไม่ [\[PSH, ACK\] กำลังทำอะไรระหว่างการเชื่อมต่อกับเซิร์ฟเวอร์แค็ตตาล็อกส่วนกลาง](https://serverfault.com/questions/614590/what-is-psh-ack-doing-during-my-connection- ไปยังเซิร์ฟเวอร์แค็ตตาล็อกทั่วโลก)
Michael Hampton avatar
cz flag
คุณสามารถแสดงการจับแพ็กเก็ตได้หรือไม่?
elsamuray7 avatar
es flag
ฉันเพิ่งรู้ว่าปัญหาไม่ได้อยู่ที่การส่งแพ็กเก็ต TCP 2 แพ็กเก็ตสำหรับแต่ละลอจิคัลแพ็กเก็ต แต่เซิร์ฟเวอร์ของฉันตีความว่าเป็น 2 แพ็กเก็ตในคอนเทนเนอร์ Docker ในขณะที่แปลเป็น 1 แพ็กเก็ตที่อื่น ตอนนี้ฉันแน่ใจแล้วว่านี่เป็นปัญหาของภาษาการเขียนโปรแกรมมากกว่า (เช่น การใช้งานซ็อกเก็ต ฉันใช้ Java) หรือปัญหาอยู่ที่ระดับระบบปฏิบัติการหรือไม่ ความคิดใด ๆ ?
Score:1
ธง us

ฉันไม่แน่ใจว่าคุณใช้งานเซิร์ฟเวอร์เกมของคุณภายใน Docker อย่างไร แต่นักเทียบท่ากำลังทำงานตามที่คุณติดตาม

โฮสต์ - เครือข่าย นักเทียบท่า - เครือข่าย Docker Swarm - เครือข่ายขาเข้า (Swarm) บริการนักเทียบท่า - เครือข่ายซ้อนทับ (บริการคอนเทนเนอร์)

ในกรณีนี้ คุณมีเลเยอร์เครือข่ายที่แตกต่างกันใน Docker เพื่อใช้งาน และทั้งหมดภายใน Docker เป็นเครือข่ายเสมือน

ขั้นตอนต่อไปที่คุณต้องทำความเข้าใจกับ Docker หากคุณกำลังทำงานในโหมด Swarm เมื่อคุณกดปุ่ม Docker Swarm มันจะชี้ตามหมายเลขพอร์ตไปยังบริการคอนเทนเนอร์ของคุณ หากคุณกำลังเรียกใช้มากกว่า 1 ซ้ำใน Swarm ของคุณ คำขอ 2 นั้นไม่ถูกต้อง อาจจะไม่ชนเซิร์ฟเวอร์เดิมซ้ำสอง

ดังนั้นปัญหาที่คุณถามเกี่ยวกับฉันคิดว่ามันเกี่ยวข้องกับการทำงานของเครือข่าย internel ใน Docker คุณสามารถอ่านเพิ่มเติมเกี่ยวกับวิธีการทำงานของเครือข่ายใน Docker และอาจเป็นเพียงการตั้งค่าสำหรับคุณที่จะเปลี่ยนเช่น เจ้าภาพ

ไดรเวอร์เครือข่ายนักเทียบท่า: https://docs.docker.com/network/#network-drivers

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา