Custom Search
##=================================================================## ##=================================================================##

มารู้จักกับ Peer to Peer กัน

วันเสาร์ที่ 18 กุมภาพันธ์ พ.ศ. 2555

 วันนี้ขอเสนอเรื่อง  P2P (Peer to Peer) 
มาดูกันว่า  P2P (Peer to Peer) คืออะไร

ในตอนนี้หลายๆคนคงได้ยินคำว่า "Bit","Torrent","P2P" ฯลฯ จากที่อื่นๆ และก็คงสงสัยว่า
ไอเจ้าพวกนี้มันคืออะไรทำงานอย่างไร และมันวิเศษวิโสอย่างไร ทำไมถึงมีการพูดถึงกันนักหนา
วันนี้เราจึงจะมาทำความรู้จักมันกันครับแต่ที่สำคัญก่อนอื่นเลยเราต้องมารู้จักกับคำว่า "P2P" กันก่อนครับ
P2P หรือเต็มๆ Peer to Peer อาจจะมีคำอื่นอีกเช่น People to People ,Point to Point ซึ่งมีความหายคล้ายคลึงกัน
Peer to Peer คือ ...
- ระบบที่อนุญาติให้ผู้ใช้สามารถแลกเปลี่ยนไฟล์ระหว่างกันหรือใช้ทรัพยากรร่วมกันผ่านระบบเครือข่าย
- ระบบการสื่อสารจากคอมพิวเตอร์เครื่องหนึ่งไปยังอีกเครื่องหนึ่งโดยตรง
- ฯลฯ
แต่เดิมนั้นเมื่อเราต้องการดาวน์โหลดไฟล์จากแม่ข่ายโดยใช้ FTP*,HTTP** นั้น
หากมีคนที่ต้องการไฟล์เดียวกับเรา 500 คนมาดาวน์โหลดบนแม่ข่ายเดียวกันพร้อมๆ กันโดยแต่ละคนมี Bandwidth คนละ 256kbps
ถ้าจะให้ทุกคนนั้นได้ความเร็วในการดาวน์โหลดสูงสุดตัวแม่ข่ายจะต้องมี Bandwidth เท่ากับ 256kbps * 500 (125mbit) เลยทีเดียว

http://siambit.com/include/Pic/central.gif

ซึ่งไม่ใช่เพียงแต่จะเปลือง Bandwidth เท่านั้น แต่ยังจะต้องใช้แม่ข่ายที่มีความเร็วในการประมวลผลสูงเพื่อรองรับความต้อง การที่เพิ่มขึ้นอีกด้วย
จากปัญหาดังกล่าวนี้เองทำให้โปรแกรมแชร์ไฟล์ P2P ถูกพัฒนาขึ้นมารองรับความต้องการที่เพิ่มขึ้นโดยใช้ทรัพยากรของแม่ข่ายให้ น้อยลงนั้นเอง
ระบบ P2P นั้นถูกพัฒนาเพื่อใช้ในการแลกเปลี่ยนไฟล์ระหว่างกันโดยที่ไม่พึ่งแม่ข่ายใน การแจกจ่ายไฟล์และทำให้สามารถหาไฟล์ที่ต้องการได้ง่ายขึ้น
*FTP = File Transfer Protocal
**HTTP = Hypertext Transfer Protocal

จากความหมายนี้เองทำให้เราเรียกโปรแกรมที่ใช้ในการแลกเปลี่ยนไฟล์ระหว่างกันโดยไม่ได้ร้องขอไฟล์จากแม่ข่ายว่า "P2P File Sharing"
โปรแกรมประเภทนี้มีอยู่มากมายหลายตัวด้วยกัน เช่น Emule, Kazaa, Edonkey ฯลฯ หลักการทำงานคร่าวๆของโปรแกรมก็คือ
1.เชื่อมต่อไปยังแม่ข่ายเพื่อยืนยันตัวตนและส่งสารบัญไฟล์ที่เราแชร์ไว้ไปด้วย
2.หากเราต้องการหาไฟล์สักไฟล์หนึ่งเมื่อเราระบุ Keyword** โปรแกรมจะส่งคำร้องไปยังแม่ข่าย
จากนั้นแม่ข่ายจะส่งรายชื่อไฟล์พร้อมข้อมูลตัวตนของคนที่มีไฟล์ที่ตรงกับ Keyword ที่เราระบุกลับมา
3.เมื่อเราพบไฟล์ที่ต้องการแล้วตัวโปรแกรมจะใช้ข้อมูลที่ได้จากแม่ข่ายติดต่อไปยังคนนั้นๆโดยตรงเพื่อร้องขอไฟล์
จากการทำงานจะเห็นได้ว่าตัวแม่ข่ายนั้นไม่ได้เป็นคนเก็บไฟล์จริงๆไว้เพียงแต่เก็บเป็นสารบัญไว้เท่านั้น
**Keyword = คำหรือประโยคหรือที่ระบุเพื่ออ้างอิงในระบบการค้นหา

>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
http://siambit.com/include/Pic/torrent.png
BitTorrent

หลังจากที่ได้พูดถึงเรื่อง P2P ทั่วไปแล้วตอนแรก อ่านมาถึงตรงนี้คงจะเริ่มเข้าใจหลักการทำงานคร่าวๆของ P2P
ไม่มากก็น้อยกันแล้วนะครับ แต่ก็อย่างที่ทุกคนเข้าใจกันดี "ไม่มีอะไรที่จะสมบูรณ์ไปมันทุกอย่าง" หรือเรียกว่า "Perfect" ทุกๆ อย่างต้องมีจุดอ่อน
ถึงแม้ว่า P2P ที่ว่า จะแก้ปัญหาจุดอ่อนเรื่อง Bandwidth และทรัพยาการเครื่องแม่ข่ายที่สูงได้ แต่ถึงกระนั้นความเร็วที่ได้ก็ไม่ค่อยจะดีเอาเสียเลย
เนื่องจากความเร็วที่ได้นั้น จะได้จากจากเชื่อมต่อผู้ใช้ด้วยกันเอง ซึ่งโดยทั่วไปแล้วความเร็ว Internet ในการรับส่ง ของผู้ใช้ตามบ้านนั้นไม่ได้เร็วเหมือนเครื่อง
ที่ใช้เป็นแม่ข่ายโดยซึ่งเฉพาะที่จะตั่งอยู่ใน ISP ซึ่ง Bandwidth อย่างต่ำๆ นั้นเป็น 100Mbit และผู้ใช้เอง ส่วนมากนั้นก็จะเห็นแก่ตัว
คือไม่ปล่อยให้ตัวโปรแกรมส่งแบบเต็มๆ Bandwidth ที่มีจะกั้กเอาไว้ (มีน้อยแล้วยังจะกั้กอีก) ส่วน Bandwidth ดาวน์โหลดนั้นดันเปิดไว้เต็มๆ เอากับเขาสิ...
ทำให้โปรแกรมประเภท P2P ที่กล่าวมานั้นความเร็วที่ได้จะขึ้นอยู่กับว่าคนที่มีไฟล์ที่เรากำลังโหลด อยู่นั้นมีความเร็วในการส่งข้อมูลให้เรามากแค่ไหน (กั้กอีกแค่ไหน)
รวมถึงมีคนที่มีไฟล์เดียวกับเรานั้นมีมากแค่ไหน ซึ่งจะเห็นได้ว่าความเร็วที่ได้นั้นมีเงื่อนใขหลายอย่างประกอบกันมากพอสมควร

ถึงตรงนี้ Bittorrent ก็กำเนิดขึ้นมาซึ่งมีการทำงานแตกต่างจาก P2P ทั่วไปอยู่เล็กน้อยแต่ก็ทำให้ความเร็วที่ได้นั้น
นำหน้า P2P ทั่วไปอย่างเห็นได้ชัดเลยทีเดียวและมีความถูกต้องของข้อมูลสูงรวมถึงทำให้ ทุกคนรู้จักถึงคำว่า "แบ่งปัน" หรือ "give and take" นั้นเอง
เราคงจะข้ามความเป็นมาของ Protocal* Bittorrent เนื่องจากมีสาเหตุเดียวกันกับ P2P ทั่วไปแต่คงจะขาดชื่อของผู้คิดระบบนี้ไปไม่ได้
ชื่อของเขาก็คือ "Bram Cohen"

>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
http://siambit.com/include/Pic/download.png
การดาวโหลด (Download)

เริ่มจากท่านหาไฟล์ที่ท่านต้องการโดยการเข้าไปในหน้าของ Torrents
ในที่นี้จะใช้โปรแกรม BitComet เป็นหลักโดยสามารถหาโปรแกรมนั้นได้จากเวป BitComet.com

เมื่อดาวโหลดไฟล์ Torrent ที่ต้องการมาแล้ว เปิดโปรแกรม Bitcomet (ใช้โปรแกรมอื่นก็ได้นะค่ะ แต่ในที่นี้ใช้ Bitcomet)
- กด Open
- เลือกไฟล์ Torrent ที่ได้โหลดมาเมื่อกี้
- กดปุ่ม Open เมื่อเลือกได้แล้ว

http://siambit.com/include/Pic/download2.gif

จะมีหน้าต่าง Task Properties… ขึ้นมา

Save Location
- เลือกว่าจะไป Save ไว้ที่ไหน ระวังเรื่องพื้นที่ด้วย ถ้าไม่พอเก็บเดี๋ยวจะซวยที่หลัง

Torrent Content
- แสดงไฟล์ที่จะโหลด สามารถเลือกโหลดได้ ถ้าไม่อยากได้ไฟล์ไหนก็สามารถติ๊กออกได้
- แสดงรายละเอียดหรือข้อความที่ผู้สร้างไฟล์ Torrent เป็นผู้เขียนไว้
กด OK เมื่อเลือกเสร็จแล้ว

http://siambit.com/include/Pic/download3.gif

http://siambit.com/include/Pic/download4.gif

เริ่มโหลด และ สถานะที่ควรทราบ
1. ก็คือตัว BitComent กำลังติดต่อไปที่ Tracker เพื่อขอรายการ IP
หากสถานะนี้คงอยู่นานเป็นไปได้ว่า Tracker มันกลับบ้านเก่าไปแล้ว...
2. BitComent ได้รายการ IP มากจากขั่นที่ 1 เรียบร้อยแล้วและกำลังที่จะติดต่อไปหาคนอื่นๆจากรายการ IP ที่ได้มา
หากสถานะนี้อยู่นาน เป็นไปได้ว่าไม่มีคนกำลังโหลดไฟล์นี้อีกต่อไปแล้วให้ทำใจลบทิ้งไปเลย


การโหลดไฟล์จาก BitTorrent นี้จะใช้รายการ IP ที่ได้จาก Tracker ซึ่งก็เป็น IP ของคนที่กำลังโหลดอยู่
สามารถแยกได้ 2 ประเภทก็คือ Peer และ Seed
Peer - คือคนที่กำลังโหลดไฟล์อยู่แต่ยังไม่เสร็จ (ขณะที่เรายังโหลดไม่เสร็จก็คือ Peer)
Seed - คือคนที่โหลดไฟล์เสร็จแล้วแต่ยังปล่อยให้ Peer คนอื่นๆมาโหลดจากตัวเอง


3 - BitComent ทำงานเป็นปรกติและกำลังดาวน์โหลดไฟล์ในรายการที่แสดงอยู่...
ขณะกำลังดาวน์โหลดสถานะหมายเลข 3 จะอยู่ตลอดจนเสร็จสิ้น...

http://siambit.com/include/Pic/download5.gif

คำอธิบายแถบสถานะ
Name - ชื่อ Torrent
Size - ขนาดรวมทั้งหมด
% - จำนวนเปอร์เซ็นต์ของไฟล์ที่เราโหลดได้
KB/s Dn - ความเร็วในการดาวน์โหลด
KB/s Up – ความเร็วในการอัพโหลด
Time Left - เวลาที่จะใช้ในการดาวน์โหลดจนเสร็จสิ้น (จากการคำนวณ)
Seed/Peer[all] - จากในรูปนะครับ 109/160[190/2878]
109 - ติดต่อไปหาคนที่เป็น Seed 109 คนจากทั้งหมด 109 คน
160 - ติดต่อไปหาคนที่เป็น Peer 160 คนจากทั้งหมด 2878 คน
U/D Ratio - อัตราส่วนอัพโหลดต่อดาวน์โหลด


*ความเร็วในการดาวน์โหลดนั้นขึ้นอยู่กับ Seed/Peer ต่ออยู่และความเร็วที่เราอัพโหลดให้คนอื่น
แต่ก็มีข้อควรรู้บางประการที่อยากจะบอกไว้เป็นเคล็ดไม่ลับที่ควรจะนำไปใช้ก็คือ...
การจำกัดความเร็วในการอัพโหลดอย่าให้เกินกำลังของ Bandwidth ที่เรามีเพื่อให้สามารรับส่งข้อมูลได้
อย่างราบลื่นไม่ติดขัดอันจะส่งผลให้โหลดได้ช้ากว่าปรกติ
โดยการคลิ้กที่เมนู Options แล้วไปที่ Preferences

http://siambit.com/include/Pic/download6.gif

เลือกแถบ Connection แล้วทำการระบุความเร็วสูงสุดในการอัพโหลดในช่อง Global Max Upload Rate :
จะคำนวณได้โดยนำความเร็วของขาขึ้นของ Internet ที่ใช้อยู่ เช่น
ผมใช้ ADSL 1024/512 Kb/s ความเร็วขาขึ้นของผมก็คือ 512 Kb/s
ก็คือผมจะสามารอัพโหลดได้สูงสุด 512 Kb/s ผมจะจำกัดความเร็วในการอัพโหลดสูงสุดของ BitComet
ไว้ที่ 70% จากทั้งหมดที่มี คำนวณได้โดย (512/100*70) = 358.4 Kb/s เปลี่ยนจากหน่วย Kb/s เป็น KB/s + 2Bits(start/stop bits)
โดย (358.4/10) = 35.8 kB/s ครับ


เสร็จสิ้น
เมื่อเราดาวน์โหลดเสร็จเราจะแปลงสภาพจาก Peer กลายเป็น Seed

http://siambit.com/include/Pic/download7.gif

โดยมารยาทแล้วเมื่อเราดาวน์โหลดเสร็จ จะเป็นการดีถ้าเราสามารปล่อยอัพโหลดหรือที่เรียกกันว่า Seed
จน U/D Ratio ขึ้นมาอย่างน้อย 1.0 ก่อนที่จะปิด/ลบออกไป

วิธีการปิด / ลบ รายการดาวน์โหลด
ทำได้โดยเลือกที่รายการ torrent ที่ต้องการแล้วคลิ้กขวา remove

http://siambit.com/include/Pic/download8.gif

จะมีให้เลือก 2 อย่างคือ
- Remove task only จะเป็นการลบรายการ Torrent นั้นออกจากตัว BitComet แต่จะคงไฟล์ที่โหลดไว้ที่เดิม
- Remove task and files จะเป็นการลบรายการ Torrent ออกนั้นจากตัว BitComet และลบไฟล์ที่โหลดทิ้งด้วย

>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
http://siambit.com/include/Pic/upload.png
การอัพโหลด (Upload)

ในที่นี้เราจะใช้โปรแกรม BitComet ในการทำตัว Upload นะค่ะ
ใครยังไม่มีให้ไปโหลดได้ที่ http://www.bitcomet.com
ถ้ามีครบแล้วเรามาเริ่มกันเลย
กดปุ่ม "สร้าง"

http://siambit.com/include/Pic/bit01.gif

http://siambit.com/include/Pic/bit02.gif

1. แบบไฟล์เดี่ยว - มีไฟล์เดียวที่ต้องการนำมาทำไฟล์ Torrent
แบบไดเรคทอรี่(หลายไฟล์) - เลือกทั้ง Folder
2. เลือกไฟล์หรือ Folder
3. ใส่แทรคเกอร์ สามารถเอาได้จากหน้า Upload ในเว็บ
4. ที่บันทึกไฟล์ Torrent ที่เราสร้าง
5. กด OK เมื่อใส่รายละเอียดเรียบร้อยแล้ว

http://siambit.com/include/Pic/bit03.gif

http://siambit.com/include/Pic/bit04.gif

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

อ้างอิงจาก..http://siambit.com/faqp2p.php

0 ความคิดเห็น: