การทำงาน ของ เอฟทีพี

เครื่องลูกข่ายเริ่มต้นสร้างการเชื่อมต่อไปยังเครื่องแม่ข่ายโดยใช้ทีซีพีบนพอร์ตหมายเลข 21 การเชื่อมต่อนี้คือ การเชื่อมต่อส่วนควบคุม ซึ่งจะเปิดอยู่ตลอดเวลาขณะที่มีการใช้งาน หลังจากนั้น การเชื่อมต่อส่วนข้อมูล บนพอร์ตหมายเลข 20 จะถูกสร้างขึ้นตามความจำเป็นเพื่อส่งผ่านข้อมูลไฟล์ คำสั่งที่ส่งโดยเครื่องลูกข่ายไปยังส่วนควบคุมมีรูปแบบเป็นข้อความแอสกี และจบคำสั่งด้วย CRLF (อักขระปัดแคร่ตามด้วยอักขระป้อนบรรทัด) ตัวอย่างเช่น RETR filename เป็นคำสั่งรับข้อมูลไฟล์ที่ต้องการจากเครื่องแม่ข่ายมายังเครื่องลูกข่าย

หลังจากเครื่องแม่ข่ายได้รับคำสั่งแล้ว จะตอบกลับด้วยรหัสสถานภาพเป็นตัวเลขสามหลักพร้อมกับข้อความแอสกีถ้ามี บนการเชื่อมต่อส่วนควบคุม ตัวอย่างเช่น 200 หรือ 200 OK หมายความว่าคำสั่งล่าสุดสำเร็จผล การส่งผ่านไฟล์บนการเชื่อมต่อส่วนข้อมูลที่กำลังดำเนินอยู่สามารถยุติลงได้ด้วยการส่งคำสั่งให้หยุดไปบนการเชื่อมต่อส่วนควบคุม

เอฟทีพีสามารถทำงานได้ใน วิธีส่งการร้องขอ หรือ แอคทีฟโหมด (active mode) และ วิธีรับการร้องขอ พาสซีฟโหมด (passive mode) ซึ่งเป็นการเลือกว่าให้จัดการการเชื่อมต่อที่สองอย่างไร ด้วยวิธีส่งการร้องขอ เครื่องลูกข่ายจะส่งหมายเลขไอพีและพอร์ตที่ต้องการใช้ส่งผ่านข้อมูลให้กับเครื่องแม่ข่าย จากนั้นเครื่องแม่ข่ายจะเปิดการเชื่อมต่อนั้นกลับมา ในขณะที่วิธีรับการร้องขอ เครื่องแม่ข่ายจะส่งหมายเลขไอพีและพอร์ตให้กับเครื่องลูกข่ายก่อน จากนั้นเครื่องลูกข่ายจะสร้างการเชื่อมต่อดังกล่าว (แนวคิดตรงข้ามกับวิธีส่งการร้องขอ) วิธีรับการร้องขอถูกคิดค้นขึ้นมาเพื่อใช้ในกรณีเครื่องลูกข่ายตั้งอยู่หลังไฟร์วอลล์ และไม่สามารถรับการเชื่อมต่อทีซีพีที่ไม่รู้จักจากภายนอกได้ วิธีการทั้งคู่ได้รับการปรับปรุงเมื่อเดือนกันยายน พ.ศ. 2541 เพื่อให้รองรับไอพีวี6 และปรับแต่งวิธีรับการร้องขอทำให้เกิดเป็น วิธีรับการร้องขอแบบเสริม (extended passive mode) ขึ้นมา

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

  • วิธีข้อมูลแอสกี ใช้สำหรับข้อมูลชนิดข้อความธรรมดาเท่านั้น (หากใช้กับข้อมูลชนิดอื่นจะทำให้ไฟล์เสีย)
  • วิธีข้อมูลไบนารี เครื่องที่ส่งข้อมูลจะส่งไปทีละไบต์ และเครื่องที่รับข้อมูลจะรับเป็นกระแสข้อมูลไบต์ (bytestream) มาตรฐานเอฟทีพีเรียกวิธีนี้ว่า วิธีข้อมูลอิมเมจ

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