MSITBlog

1 minute reading time (223 words)

iTunes Protocol

 

iTunes Protocol

 

 

What is iTunes?

 

เมื่อพูดถึงโปรแกรมดูหนังฟังเพลงสามัญประจำเครื่อง Mac คงหนีไม่พ้น iTunes ซึ่งถือเป็นโปรแกรมมัลติมีเดียของ Apple ที่ใช้ในการดูหนัง ฟังเพลง จัดการแอปพลิเคชั่น สำรองช้อมูลของ iPhone และ iPad ทั้งยังเป็นร้านค้าออนไลน์ที่เปิดให้ซื้อเพลง หนัง ได้อีกด้วย โดยสามารถทำงานได้ทั้งบน Mac, PC, iPad, iPhone, iPod touch และ Apple TV

iTunes เริ่มเป็นที่รู้จักมาตั้งแต่ประมาณปี 2001 และพัฒนามาเรื่อยๆ ตลอดหลายปีที่ผ่านมา

 

 

iTunes Protocol

 

            ต่อจากนี้จะเป็นการอธิบายโปรโตคอลของ iTunes ขณะที่โปรแกรมกำลังถูกเปิดใช้งาน เพื่อดูหลักการทำงานของการรับส่งข้อมูล

 

 

            เริ่มจากการเปิดโปรแกรมขึ้นมา โปรแกรมจะทำการค้นหา IP ของ "init.itunes.apple.com" Server โดยทำการคุยผ่าน DNS

Server ตอบกลับ

Client ส่ง Packet SYN (Synchronize) เพื่อขอทำการเชื่อมต่อกับ Server

Server ส่ง Packet SYN, ACK กลับมาเพื่อยืนยันว่าพร้อมรับข้อมูลจากทาง Client

Client ส่ง packet ACK เพื่อบอกว่ากำลังจะส่งข้อมูลไปให้ เมื่อ Server ได้รับ Packet ACK นั้น แสดงว่าการเชื่อมต่อเสร็จสมบูรณ์

ต่อจากนี้เครื่อง Server จะเริ่มรับส่งข้อมูลกับ Client

 

 

เมื่อสร้าง Connection แล้วจะทำการแลกเปลี่ยน Certificate เพื่อยืนยันตัวตนในการเข้าใช้งานผ่าน Protocol TLSv1.2

โดยจะทำการเข้ารหัสให้กับข้อมูลก่อนจะส่งไปยังผู้รับข้อมูลปลายทาง เพื่อเพิ่มความปลอดภัยให้กับข้อมูลในขณะที่กำลังส่งข้อมูลเหล่านั้นจากเครื่องแม่ข่ายไปยังเครื่องลูกข่าย

ในขณะที่โปรแกรมกำลังทำงาน ไม่ว่าจะเป็นการดูหนัง ฟังเพลง โหลดไฟล์ต่างๆ ทั้ง Server และ Client จะทำการแลกเปลี่ยนข้อมูลซึ่งกันและกัน (TLSv1.2: Application data)

 

 

และเมื่อ Sign out ออกจากโปรแกรม Client จะส่ง FIN เพื่อร้องขอจบการเชื่อมต่อไปที่ฝั่ง Server

Server ตอบกลับด้วย RST (Reset), ACT สั่งตัด connection หรือโปรแกรมที่ทำงานบน Connection นั้น ถือเป็นการจบการทำงานของโปรแกรม

แล้วจะเกิดอะไรขึ้นถ้าผู้ใช้งานไม่ได้กด Sign out ก่อนปิดโปรแกรม

 

 

            เมื่อผู้ใช้กดปิดหน้าต่างโปรแกรม iTunes โดยที่ยังไม่ได้ Sign out Client จะส่งสถานะไปยัง Server เพื่อแจ้งว่ามีการตัดการเชื่อมต่อ RST, ACK

           การจากดูโปรโตคอลข้างต้นจะได้ข้อสังเกตดังนี้

  1. SYN เกิดขึ้นเดี่ยวๆ หรือเกิดคู่กับ ACK เท่านั้น และเกิดได้แค่ 2 ครั้งตลอดการเชื่อมต่อที่ ฝั่ง Client และ Server อย่างละครั้ง
  2. FIN เกิดหลังจากการเชื่อมต่อ (3-Way Handshake) เสร็จสมบูรณ์แล้วเท่านั้น หรือก็คือเกิด SYN – SYN, ACK - ACK ครบกระบวนการเสมอ
  3. RST จะเกิดได้เมื่อ Packet ทำงานผิดขั้นตอน หรือมีอะไรมาขัดขวางการเชื่อมต่อ หรือโปรแกรมที่เป็นเจ้าของ Connection ปิดการทำงานไปแบบผิดปกติ OS จะทำการส่ง Reset ไปให้อีกฝ่าย

 

 

 -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

จัดทำและเรียบเรียงโดย

ฐานเรศ จุปะมัตตัง

วรางคณา เตชศรีสุธี

ปิติกร ปัตตะพงศ์

วิภู รำไพกุล

 

แหล่งข้อมูลอ้างอิง

www.macthai.com

www.macworld.com

www.techradar.com

edition.cnn.com

www.google.com

www.flaticon.com

 

 

 

Google Chrome with QUIC
ปิดท้ายของอนุกรม “Basic Problem Solving”

Related Posts

 

Comments

No comments made yet. Be the first to submit a comment
Already Registered? Login Here
Guest
Wednesday, 18 September 2019