Page 1
รายงานโครงการหมายเลข COE2006-18
การวดประสทธภาพการใหบรการสาหรบ Server
โดย
นายภาณวตร กรตศรพงศ รหส 463040540-6
นายนรศ ใชวฒน รหส 463040526-0
รายงานนเปนรายงานงานโครงการของนกศกษาชนปท 4 ซงเสนอเปนสวนหนงใน
หลกสตรวศวกรรมศาสตรบนฑต
ภาควชาวศวกรรมคอมพวเตอร
คณะวศวกรรมศาสตร มหาวทยาลยขอนแกน
Page 2
Project Report No. COE2006-18
Performance Streaming Server Analysis
By
Mr. Panuwat Keeratisiripong I.D. 463040540-6
Mr. Naris Chaiwat I.D. 463040526-0
This is the report of fourth year project assignment submitted in partial
fulfillment of the requirement for the Degree of Bachelor of Engineering
Department of Computer Engineering
Faculty of Engineering, Khon Kaen University
Page 3
เรอง
การวดประสทธภาพการใหบรการสาหรบ เซรฟเวอร
โดย นายภาณวตร กรตศรพงศ รหส 463040540-6
นายนรศ ใชวฒน รหส 463040526-0
อาจารยทปรกษาโครงการ
.......................................
(อ.ดร. ชชชย คณบว)
อาจารยผรวมประเมนโครงการ
1. ........................................
(อ.ดร. กตต เธยรธโนปจย)
2. ........................................
(ผศ.อนตต เจาสกล)
ประเมนผล ณ วนท 12 กมพาพนธ 2550
Page 4
กตตกรรมประกาศ
ผจดทาโครงการใครขอแสดงความขอบคณตอบคคลดงตอไปน
อ.ดร. ชชชย คณบว อาจารยทปรกษาโครงการ ทไดใหคาแนะนา, ใหยมเอกสารตาราตางๆ
และคอยเตอนสตในการทางานมาโดยตลอด ทาใหโครงการสมบณ
เจาหนาทภาควชาวศวกรรมคอมพวเตอรทไดใหความชวยเหลอและอานวยความสะดวกใน
การพฒนาโครงการ
นายภาณวตร กรตศรพงศ
นายนรศ ใชวฒน
Page 5
บทคดยอ
สาหรบการใหบรการสาหรบเซรฟเวอร จาเปนตองมประสทธภาพทคอนขางสงเพอรองรบ
การทางานตางๆทถกรองขอเขามาจากผใช ดงนนจงจาปนตองมการออกแบบเซรฟเวอร เพอใหม
ประสทธภาพ การวเคราะหประสทธภาพของเครองเซรฟเวอร เปนการทดสอบเครองเซรฟเวอร
แลวนาผลทไดมาวเคราะหเพอนาไปออกแบบ โดยโครงการนจะทาการทดสอบ Darwin
Streaming Server version 5.5.3 และ Windows Media Encoder การทดสอบจะทาโดยมเครอง
Server 1 เครอง และเครอง client จานวน 10 เครอง ในโครงการนจะคานงถงจานวนขอมลท
สงผานระหวางเครอง Server และ Client, หนวยความจาทตองการใช, และการทางานของ cpu
โดยผลทไดรบจะเปนประโยชนในการเลอกชนดของ Server ตอไป
Page 6
Abstract
A streaming server must be carefully design to be a high performance server in
order to support a large number of works requested by users. This project is aimed to
propose Darwin Streaming Server version 5.5.3 and Windows Media Encoder. Test by
using 1 server and 10 client. In this project will consider number of data which
broadcasts between server and client, memory cache, and CPU process. The results
could be benefit for select a kind of server.
Page 7
ก
สารบญ
บทคดยอ ก
Abstract ข
สารบญ ค
สารบญรปภาพ ง
สารบญตาราง จ
บทท 1 บทนา
1.1. หลกการและเหตผล 2
1.2. วตถประสงคของโครงการ 3
1.3. ขอบเขตของโครงการ 3
1.4. แผนการดาเนนงาน 3
1.5. ประโยชนทคาดวาจะไดรบ 4
บทท 2 ทฤษฎทเกยวของ
2.1. Protocol ทเกยวของ 5
2.2. Codec 10
2.3. การสงขอมล
2.4. On-demand และ Live broadcast
2.5. Bandwidth
2.6. การวดประสทธภาพ
บทท 3 การออกแบบการทดสอบและ ผลการทดสอบเบองตน 15
บทท 4 บทสรปและขอเสนอแนะ 33
4.1. บทสรปการดาเนนงาน 33
4.2. ปญหาทพบในการดาเนนงาน 33
4.3. ขอเสนอแนะและแนวทางแกไข 33
13
14 14
13
Page 8
ข
ภาคผนวก ก ขนตอนการตดตง Active Perl 34
ภาคผนวก ข ขนตอนการตดตงโปรแกรม Darwin Streaming Server 37
ภาคผนวก ค ขนตอนการตดตง VLC 45
ภาคผนวก ง ขนตอนการตดตงและการใชงาน Windows Media Encoder 51
บรรณานกรม
Page 9
ค
สารบญรปภาพ
รปท 2.1 แสดงโครงสราง SCTP Protocol 7
รปท 2.3 โครงสรางของ HTTP 8
รปท 2.4 แสดงโครงสราง RTP protocol 9
รปท 2.5 โครงสรางของ RTCP protocol 10
รปท 2.6 แสดงสวนประกอบของ MPEG-4 12
รปท 2.7 แสดงสญลกษณ DivX 13
รปท 2.8 แสดงการออกแบบการทดสอบ 15
รปท 3.1 กราฟแสดงความสมพนธระหวางปรมาณ UDP Datagrams Received ตอ วนาท และ
เวลาเมอเพมจานวน client 16
รปท 3.2 กราฟแสดงความสมพนธระหวางปรมาณ UDP Datagrams Sent ตอวนาท และเวลา
เมอเพมจานวน client 17
รปท 3.3 กราฟแสดงความสมพนธระหวางปรมาณ UDP Datagrams ตอวนาท และเวลาเมอเพม
จานวน client
รปท 3.4 กราฟแสดงความสมพนธระหวางปรมาณ UDP Datagrams Received ตอวนาท และ
เวลาเมอลดจานวน client 18
รปท 3.5 กราฟแสดงความสมพนธระหวางปรมาณ UDP Datagrams Sent ตอ วนาท และเวลา
เมอลดจานวน client
รปท 3.6 กราฟแสดงความสมพนธระหวางปรมาณ UDP Datagrams ตอวนาท และเวลาเมอลด
จานวน client
รปท 3.7 แสดงความสมพนธระหวางปรมาณ UDP Datagrams Received ตอ วนาท 19
รปท 3.8 กราฟแสดงความสมพนธระหวางปรมาณ UDP Datagrams Sent ตอวนาท และเวลา
เมอเพมและลดจานวน client
รปท 3.9 กราฟแสดงความสมพนธระหวางปรมาณ UDP Datagrams ตอ วนาท และเวลาเมอเพม
และลดจานวน client 20
รปท 3.10 กราฟแสดงความสมพนธระหวาง Processor interrupt ตอเวลา 21
รปท 3.11 กราฟแสดงความสมพนธระหวางProcessor interrupt ตอเวลา 21
รปท 3.12 กราฟแสดงความสมพนธระหวาง Processor interrupt ตอเวลา 22
รปท 3.13 กราฟแสดงความสมพนธระหวางปรมาณ UDP Datagrams Received ตอเวลา
รปท 3.14 กราฟแสดงความสมพนธระหวางจานวน UDP Datagrams Sent ตอเวลา 23 23
17
18
19
20
22
Page 10
ง
รปท 3.15 กราฟแสดงความสมพนธระหวางจานวน UDP Datagrams ตอเวลา
รปท 3.16 กราฟแสดงความสมพนธระหวาง Processor ตอเวลา
รปท 3.17 กราฟแสดงความสมพนธระหวางการ Processor interrupts ตอเวลา
รปท 3.18 กราฟแสดงความสมพนธระหวางการทางานของ Processor Interrupt ตอเวลา
รปท 3.19 กราฟแสดงความสมพนธระหวางการใช Memory cache Bytes ตอเวลา
รปท 3.20 กราฟแสดง Datagams Received ท client ไดรบตอวนาท
รปท 3.21 กราฟแสดง Datagrams ทงหมดตอวนาท
รปท 3.22 กราฟแสดง Datagrams Sent (ทสงออกไป) ตอวนาท
รปท 3.23 กราฟแสดงการใช Memory cache Bytes
รปท 3.24 กราฟแสดงการทางานของ CPU เมอมการ Interrupts
รปท 3.25 กราฟแสดงความสมพนธระหวางการทางานของ CPU ตอเวลา
รปท 3.26 กราฟแสดงความสมพนธระหวางการทางานของ Processor Interrupt ตอเวลา
รปท 3.27 กราฟแสดงความสมพนธระหวางการทางานของ Processor ตอเวลา
รปท 3.28 กราฟแสดงการจองพนทใน Memory Cache เมอจานวน Client เพมขนเรอยๆ
รปท 3.29 กราฟแสดง Datagrams Received ตอเวลา
รปท 3.30 กราฟแสดง Datagrams Sent ตอเวลา ทสงออกไป
รปท 3.31 กราฟแสดง Processor Interrupt Time ของ CPU
รปท 3.32 กราฟแสดง Memory Cache Bytes
รปท 3.33 กราฟแสดง UDP Datagrams ตอ เวลา
รปท ก.1 แสดง Folder ของ ActivePerl
รปท ก.2 Icon โปรแกรม ActivePerl 34
รปท ก.3 แสดงคาถามเปด License.txt 35
รปท ก.4 แสดงการตดตงท Directory c:\Perl 35
รปท ก.5 แสดงคาถามในการตดตง 36
รปท ก.6 แสดงคาถามตางๆ 36
รปท ข.1 Icon โปรแกรม Darwin Streaming Server 37
รปท ข.2 แสดงการใสคา Username 37
รปท ข.3 แสดงการใส Password 38
รปท ข.4 แสดงหนาตางสถานะการทางาน 38
รปท ข.5 จะเปนสวนทใส Username และ password ของ Administrator 40
รปท ข.6 จะใส User Name: root, Password: root 40
24
24
25
25 26 26 27
27
28
28
23
29
29
30
30
31
31
32
32
34
Page 11
จ
รปท ข.7 จากรปจะเปนการใสคา Mp3 broadcast password เพอสทธการสงขอมล 41
รปท ข.8 จากรปจะเปนสวนของการ ระบ Assistant Secure Administrator (SSL) ในทนเราระบ 41
รปท ข.9 จากรปจะเปนการระบแฟมทใชเกบขอมล Multimedia 42
รปท ข.10 จากรประบการใชงาน Port 80 ในทนจะระบไวใหทางานได 42
รปท ข.11 จากรปสวนนเปนสวนของหนาหลกบอกขอมลตางๆดงน 44
รปท ข.12 หนาตางการเรยกขอมลจาก เซรฟเวอร 44
รปท ค.1 แสดงการใส URL 45
รปท ค.2 Icon โปรแกรม VLC 45
รปท ค.3 Interface ของโปรแกรม 45
รปท ค.4 การเรยกขอมลผานหนา Interface 45
รปท ค.5 การเลอกการทางาน 46
รปท ค.6 แสดงการเลอก file ในการสงขอมล 46
รปท ค.7 แสดงขอมลทจะทาการสง 47
รปท ค.8 ระบหมายเลข IP ทตองการจะสง 48
รปท ค.9 การเขารหสในการสงขอมล 49
รปท ค.10 การตงคา TTL 50
รปท ค.11 Interface ขณะทาการสงขอมล 50
Page 12
ฉ
สารบญตาราง
ตารางท 1.1 แสดงขนตอนการทางานและระยะเวลาททา 3
ตารางท 2.1 แสดงโครงสรางของ UDP 5
ตารางท 2.2 แสดงการเปรยบเทยบระวาง TCP กบ SCTP 6
Page 13
1
บทท1 บทนา
“The convergence of media” เปนประโยคทถกใชบอกกลาวถงการสอสารและสอตางๆ
ในปจจบนไดเปนอยางด เพราะการขยายตวอยางตอเนองของปรมาณเครองคอมพวเตอรทม
ประสทธภาพและปรมาณการเขาใชอนเตอรเนตทมมากขน จากอปกรณพนฐานไปสอปกรณทม
ประสทธภาพและมความหลากหลายมากขนเพอเชอมตอระหวางความบนเทงและการสอสาร
เชน การกาเนดของ Graphic User Interfaces (GUI) และ web browser พฒนาขนมาเพอชวยให
การใชงานทางดานอปกรณางๆงายขน ตางจากในอดตทอนเตอรเนตในยคกอนมการใชงานใน
ปรมาณทนอยมากเมอเทยบกบปจจบน ทาใหมความตองการการใชงานอปกรณหรอ software
ตางๆทงายและสะดวกสบายมากขน
จากการพฒนาของ Web browser ทาใหขอมลเวบไซต, ภาพกราฟฟก, และโปรแกรมคน
หาทางอนเตอรเนตททาใหใชงายขน เพมความสมบรณใหกบการสอสารทางดานอนเตอรเนต ทา
ใหกลายเปนทนยมอยางรวดเรวเพราะความสะดวกสบายตางๆทมมากขนนนเอง
ในอดตขอมลตางๆทไมมความเปนระบบ ภาพทไมสวยงาม การรบสงขอมลทลาชา ยง
สามารถกลายเปนทยอมรบอยางกางขวาง ไดเนองมาจากการในขณะนนยงมกลมคนทตองการ
การสอสารทางดานอนเตอรเนตอยจานวนหนง แตในปจจบนความแตกตางจากอดต มมากอยาง
เหนไดชด เพราะการพฒนาของอนเตอรเนตใน ดงจะเหนไดจาก
- อตราคาธรรมเนยมทางอนเตอรเนตทลดลงและ การอนเตอรเนตความเรวสง, ซง
เปนไดวาจะมการใชงานการสงขอมลทมคณภาพอยางหนาแนน
- จานวนของผใชเพมขนและเพมการขยายตวของพาณชยอเลคโทรนกส (e-
commerce) บนอนเตอรเนตเปนสาเหตใหเปนทสนใจของนกลงทน ซงสวนใหญ
ตองการความแตกตางจากผลงทนรายอนๆ เพอความไดเปรยบ โดยการเสนอ
นวตกรรมใหมๆ เชน ใชการสงขอมลทางอนเตอรเนต การเชอมตอการสงขอมลทาง
อนเตอรเนตทรวดเรวประสานกบการสอโทรทศนทมความนยมในทกท ทาใหผลงทน
ไดรบขอมขาวสารทรวดเรวและสะดวกสบาย รวมทงสอตางๆทเชอมตอถงกน
- ผลกระทบจากปจจยเหลานกลายเปนหลกฐานทชดเจนอยางมาก เมอเปรยบเทยบกบ
ในอดต การสงขอมลบนอนเตอรเนตเปนเทคโนโลยการสงขอมลทไมเพยงเปลยนโฉม
หนาของอนเตอรเนตยคเกา แตยงเปลยนรปแบบอตสาหกรรมทางดานนทงหมดอก
ดวย องคประกอบเหลาน ทาใหเครอขายตางๆ ผสมผสานพนฐานความเปนไปไดใน
การรวมขอมลทมรปแบบทแตกตางกนเขาไวดวยกน
Page 14
2
รปแบบทหลากหลาย เชน การสงขอมลแบบ live-broadcast หรอ on-demand อปกรณ
ในการสงขอมลแบบตางๆเหลานถกพฒนาขนเฉพาะในกลม การพฒนาเหลานแสดงใหเหนอยาง
ชดเจนถงการเชอมตอถงกนของสอตางในทกวนน
หลกการและเหตผล ปจจบน คอมพวเตอรเขามามบทบาทในชวตประจาวนของเราอยางเลยงไมได เนองจากความ
ตองการตางๆ ทงทางดานความสะดวกสบายและความบนเทงในกจกรรมตางๆ ทาใหมการพฒนา
Technology ทางดาน Internet เพอรองรบกบความตองการทางดานตางๆ ของผใชทมมากขนใน
แตละวนและใหการบรการทมประสทธภาพ และรวดเรว แตจากความตองการทมากขนนเอง ทาให
การพฒนาทไมสอดคลองกบความตองการของผใช กอใหเกดปญหา ในการใหบรการ เชน การท
ผใชมการใชงานฐานขอมลเดยวกน ทาใหเซรฟเวอร ทใหบรการทางานหนกเกนไป จนกอใหเกด
ปญหาเซรฟเวอร ใหบรการชา หรอถงขนเซรฟเวอร ลม ยงผลใหเกดปญหาดานอนๆ ตามมาได
ยกตวอยางเหตการณทผานมา กรณของ ระบบเอนทรานซ ระบบใหม หรอ O-Net, A-Net ในป
พ.ศ. 2549 ทเกดปญหา ระบบการแจงผลคะแนนทาง Internet ทไมสามารถแจงผลคะแนนไดทนท
เนองจากมการเขาถงฐานขอมลพรอมๆกน ของผใช ทาใหเซรฟเวอร ทางานหนก จนเซรฟเวอรลม
ปญหาทเกดขนดงกลาว เปนปญหาหนงทแสดงใหเหนวา ไมสามารถจดการกบการใชงานของ
ผใชได แนวทางแกปญหาหนงกคอการทราบถงประสทธภาพการทางานของเครองทใหบรการใน
ขณะนน เพอใหทราบถงการทางานหากเกดปญหา ทาใหแกไขไดทนทวงท หรอในกรณของการ
ใหบรการทาง Multimedia ทตองการทรพยากรทมประสทธภาพสง อาจทาใหเกดปญหาไดงาย ซง
การทราบถงประสทธภาพในการทางานของระบบ จะทาใหสามารถสนบสนน การใชงานอยางม
ประสทธภาพ ในการสงขอมล ระยะเวลาในการสงผานขอมล เพอนาขอมลทไดมาเตรยมการใน
การจดการกบระบบและการแกไขระบบไดทนท หากเกดปญหาขน หรอนามาเปนขอมลในการ
ออกแบบระบบใหมประสทธภาพได
ซงการวดประสทธภาพของเซรฟเวอรนนตองการขอมลตางๆหลายอยางประกอบเขาดวยกน
โดยในการวดประสทธภาพของการใหบรการจะทาการวดอตราการสงขอมล หนวยความจาทใช
และการทางานของ CPU ทสถานการณตางๆ เชน UDP, TCP, Memory cache และ CPU
Process
Page 15
3
1.2 วตถประสงค 1. เพอวดประสทธภาพการทางานของเซรฟเวอร ทใหบรการทางดาน Multimedia
2. เพอเปรยบเทยบการทางานของ Application Serverทใหบรการทางดาน Streaming
Server
1.3 ขอบเขตการดาเนนงาน 1. ศกษาการทางานของเซรฟเวอร Application ทแตกตางกน คอ Darwin Streaming
Server[1], VLC (Video Lan Client)[12],Windows Media Encoder
2. เปรยบเทยบประสทธภาพของเซรฟเวอรทแตกตางกน
3. เปรยบเทยบ UDP, TPC, Memory, CPU Process ของเซรฟเวอรตามจานวน client
ทรองขอเขามาแตกตางกน
1.4 แผนการดาเนนงาน 1. ศกษาการทางานของเซรฟเวอรแตละแบบ
2. ศกษาเครองมอในการทดสอบ
3. ทดสอบการทางานของเซรฟเวอร
4. เกบรวบรวม และวเคราะหขอมล
5. ตรวจสอบผลจากการทดสอบ
6. สรปและรายงานผล
1.5 ขนตอนการดาเนนงาน
2549 2550 แผนการดาเนนงาน
ม.ย. ก.ค. ส.ค. ก.ย. ต.ค. พ.ย. ธ.ค. ม.ค. ก.พ.
1. ศกษาการทางานของ
เซรฟเวอร แตละแบบ
2. ศกษาเครองมอในการทดสอบ
3. ทดสอบการทางานของเซรฟเวอร
4. เกบรวบรวม และวเคราะหขอมล
5. ตรวจสอบผลทไดจากการทดสอบ
6. สรปและรายงานผล
ตารางท 1.1 แสดงขนตอนการทางานและระยะเวลาททา
Page 16
4
1.6 ประโยชนทคาดวาจะไดรบ 1. ทราบถงการทางานของเซรฟเวอร และประสทธภาพการทางานของเซรฟเวอรท
ใหบรการทางดาน multimedia
2. เปรยบเทยบการทางานของ Application ทใชจดการทางดาน Multimedia ของ
Server ททางานแตกตางกน เชน Darwin Streaming Server[1], VLC (Video Lan
Client)[12], Windows Media Encoder
Page 17
5
บทท 2 ทฤษฏทเกยวของ
ในบทนจะกลาวถงทฤษฎและความรทเกยวของกบโครงการน โดยประกอบไปดวย
Protocol ตางๆ เชน UDP, TCP, SCTP และ HTTP การเขารหสการสงขอมลรวมถง Stream
Server ชนดตางๆ
2.1 Protocol Protocol คอรปแบบขนตอน รวมทงมาตรฐานในการใชตดตอสอสาร ซงแบงเปนหลาย
ประเภทดวยกน
2.1.1 UDP (User Datagram Protocol) [2] ทางานท Transport Layer ลกษณะการ
ทางานนนใชการสงขอมลขนาดเลกทเรยกวา datagram เขาไปในระบบ และเปนการสงขอมลทไม
มการตรวจสอบวา receiver ไดรบหรอยง สวนใหญใชในการสงขอมล พวก Multimedia [1] เชน
Video On-Demand, Broadcast[1] และ Multicast เปนตน
โครงสราง :
0-15 15-31
Source Port Destination Port
Length Checksum
Data
ตารางท 2.1 โครงสรางของ UDP
ขอด,ขอเสย : สาหรบการใช UDP นนมขอด คอการสงขอมลทมความรวดเรว และมประสทธาพ
แตมขอเสยคอคณภาพของขอมล หากเกดการสญเสยขอมลระหวางการสงขอมล จะไมมการสง
ขอมลใหมอกครง ใหม เนองจากไมสามารถทราบถงการสญเสยขอมล ตวอยางของแอปพลเคชน
ทใช เชน VLC และ Darwin สนบสนน protocol ชนดน
2.1.2 SCTP มาจากคาวา Stream Control Transmission Protocol[13] ไดทาการ
ประกาศใชเมอตลาคม ป ค.ศ. 2000 โดยกลม IETF SIGTRAN (กลมผพฒนาและสรางมาตรฐาน
ใหกบอนเตอรเนต โดยเฉพาะการสราง protocol datagram) เพอเปนโปรโตคอลสาหรบสงขอมล
ใหมความนาเชอถอไดตามมารตรฐานการสงขอมล ซงพฒนามาจาก TCP
Page 18
6
โปรโตคอล SCTP คอ โปรโตคอลทใชในการสงขอมลซงควบคม มลกษณะการทางาน
คลายกบโปรโตคอล TCP แตมการโอนยายขอมลทเปนขอความทคลายกบโปรโตคอล UDP จะ
แสดงการตารางเปรยบเทยบการทางาน ดงน
TCP SCTP
Checksum ขนาด 16 บต Checksum ขนาด 32 บต
เมอมการรองขอขอมลพรอมกนหลายชดขอมล จะ
ทาการสงขอมลกลบทละชดขอมลตามลาดบ
เมอมการรองขอขอมลพรอมกนหลายชด
ขอมล จะทาการสงขอมลกลบไปพรอมกน
ตามคารองขอ
ไมมการเกบสารองขอมลไวใน Cookie มการเกบขอมลสารองไวใน Cookie
เมอเกดขอผดพลาดขนสวนใดสวนหนง ขอมลทถก
สงในลาดบตอมาไมสามารถสงตอไปไดจนกวาจะ
สามารถซอมแซมไดสาเรจ
เมอเกดขอผดพลาดขนสวนใดสวนหนง
ขอมลอน ๆ ยงสามารถสงตอไปได โดยไม
สนใจขอผดพลาดทเกดขน
สงขอมลเปน bytes สงขอมลเปน Messages
ตารางท 2.2 แสดงการเปรยบเทยบระวาง TCP กบ SCTP
ชดขอมลของ SCTP หรอทเรยกวา Packet SCTP แตละ Packet จะมการระบหมายเลข IP
แตละ Packet SCTP ประกอบไปดวย สวนของ Herder และ Chunks โดยมการแบงขอมล
ออกเปนชดยอย ๆ หลาย ๆ ชดขอมล
Page 19
7
โครงสราง:
32 Bits
Source Port Destination Port
Verification Tag
Checksum
SCTP Common
Header
Type Flags Length
User Data
Chunk1
:: ::
Type Flags Length
User Data
Chunk2
รปท 2.1 แสดงโครงสราง SCTP Protocol
Chunk คอการแบงสวนขอมลออกเปนสวนยอย ๆ ในแตละสวนประกอบดวย
- Chunk Type ขนาด 8 บต (0-255) คอ ชนดของการทางาน เชน การโหลดขอมล
Type = 0
- Flags ขนาด 8 บต คอ อางองถง Chunk Type
- Length ขนาด 16 บต คอ ขนาดของชดขอมล
- User Data คอ ขอมลทตองการสง ซงมขนาดตามชดของขอมลนน ๆ
SCTP Common Header ประกอบดวย
- Source Port ขนาด 16 บต คอ หมายเลขพอรตของผสง
- Destination Port ขนาด 16 บต คอหมายเลขพอรตของผรบ
- Verification Tag ขนาด 32 บต คอ การตรวจสอบสอบความถกตอง เพอไมใหการสง
ขอมลเกดความผดพลาด
- Checksum ขนาด 32 บต คอ การตรวจสอบความถกตอง ของเซกเมนต โดยคานวณทง
เฮดเดอรและขอมล
SCTP สามารถใชเปนโปรโตคอลในการทางาน สาหรบ HTTP เพราะวา
- ชวยลดกระบวนการทางานและปรบปรงรายการระหวางขอผดพลาดระหวางการ
ประมวลผล
Page 20
8
- ใช 4-Way Hand Shake ซงจะเพมการใชงานในสวนของ Cookie เพอปองการกนชนกน
และถกบกรกจากผอน (Cookie คอขอมลทถกสงจากเครองเซรฟเวอร กบ client เพอใชจดจาคา
ตางๆ เชนรหสการเขาใช หรอแมกระทง playlist)
- Multi-homing คอการเชอมตอกบผใหบรการทแตกตางกน เมอการเชอมตอถกตดไป จะ
สรางการเชอมตอใหม
2.1.3 HTTP (Hypertext Transfer Protocol) [2] ทางานท Application Layer เปนการ
ทางานบน TCP เปนหลกโดยจะทาการรองขอและการตอบสนอง ระหวาง client และ server เปน
การทางานทรองรบรปแบบ HTML file และ รปภาพ ปจจบนใชเวอรชน HTTP/1.1
โครงสราง :
Ethernet Header IP Header TCP Header HTTP Header Data of HTTP
รปท 2.3 โครงสรางของ HTTP
เนองจากทางานบน TCP เปนหลกทมคณภาพของขอมลทสง แตมปญหาทความรวดเรวนอยลง
Darwin Streaming Server (Helix Universal) และ VLC สนบสนน protocol น
2.1.4 MMS (Microsoft Media Services) [4] หรอทเรยกวา NetShow เปน protocol
หนงทสามารถสงขอมลผาน UDP หรอ TCP ไดถาหาก โปรแกรม Windows Media Player ของ
client ไมสามารถสรางการเชอมตอดวย MMS ผาน UDP ได MMS จะทาการสงเปน TCP ถาหาก
การเชอมตอลมเหลวอก จะทาการสงผาน HTTP ซงเปนการรบรองคณภาพการสงขอมล ซง
Window Media Encoder รองรบการทางานของ protocol น
Data of TCP
TCP (data of IP)
Page 21
9
2.1.5 RTP (Real-Time Protocol) [5] ทางานท Application Layer โดยการ
encapsulate เขากบ UDP ทางาน สอดคลองกบ RTCP [6] โดยใชการ control จาก RTCP ใชเพอ
จดการการทางานทปนแบบ real-time
โครงสราง :
รปท 2.4 แสดงโครงสราง RTP protocol
Payload type: เปนวธทใชในการเขารหส ภาพและเสยง อาจจะเปลยนแปลงไดตาม session [7]
SSRC: synchronize source
P: padding เปนตวขยายความ
M: marker bit คอการปรบปรง delay
CC: content source count คอ ตวนบ source แตละตว
CSRC: ระบสวนรบผดชอบแตละ packet
ขอด,ขอเสย : มขอดคอ มขอจากดไมมาก, มความยดหยนสง, เปนกลางกบหลายๆ protocol, ทา
การสงไดหลายขนาด ตงแต 2 จนถง O (107) bytes และมความปลอดภย เพราะรองรบการ
เขารหส (encryption) สาหรบแอปพลเคชนทรองรบเชน Darwin Streaming Server และ VLC
(Video Client)
2.1.6 RTCP (Real-Time Control Protocol)[6] เปน protocol ททางานควบคไปกบ RTP
ทาหนาทในการควบคมขอมลทสงออกไปเปนระยะ เพอใหการสงขอมลมะประสทธภาพสงทสด
พรอมทงมการตรวจสอบความถกตองดวย
Page 22
10
โครงสราง :
รปท 2.5 โครงสรางของ RTCP protocol
SR : sender report คอ ประมาณอตรา byte ทสงไป
SDES : source description คอ ชอ, email, ทมา และอนๆ
CNAME (canonical name = user@host)
BYE : explicit leave คอ time-out
SSRC : synchronize source คอการตดตอ กบ source
Darwin Streaming Server (Helix) สามารถรองรบการทางานไดทง RTPและ RTCP
VLC รองรบ Protocol RTP และ RTCP
2.1.7 RTSP (Real-Time Streaming Protocol)[3] เปนโปรโตคอลทใชรบสงขอมล
มลตมเดยระหวางเซรฟเวอร กบ client ซงจะทาใหการรบสงขอมลตอเนองผานอนเตอรเนต โดยตว
เซรฟเวอร ดาน client สามารถสงขอมลไปใหผรบปลายทางเพยงคนเดยว (Unicast) หรอจะสงไป
ใหผรบหลายๆ คนในลกษณะเปนกลม (Multicast) กได ซง RTSP ถกกาหนดใหเปนโปรโตคอลท
นาไปใชในอนเตอรเนตโดย Internet Engineering Task Force (IETF)[8] ในเดอนเมษายน ป
ค.ศ. 1998 เรยกวา RFC 2326
มขอดคอ สามารถทางานตอเนองได ทาใหมประสทธภาพสงในการใหบรการ รองรบการใชงาน
แบบ On-Demand ซงแอปพลเคชน ทสนบสนน เชน Darwin Streaming Server และVLC รองรบ
RTSP protocol ได
2.2 Codec: ยอมาจาก (Compressor-Decompressor) [9] หรอ (Coder-Decoder) คออปกรณ
หรอโปรแกรมทสามารถทาการเขาและถอดรหส ของสญญาณหรอขอมลดจตอล โดยทาการ
เขารหสสญญาณขอมลเพอใชสง หรอเกบขอมล และทาการถอดรหสเพอด หรอแกไข โดยสวน
ใหญถกใชในการประชมทางไกล หรอ video conference และการสงขอมลแบบ multimedia
โดยสวนใหญแลว การเขารหสทาใหเกดการสญเสยของขอมลเนองจากเปนการลดขนาดของขอมล
แตคณภาพทไดขนอยกบประเภทของการเขารหส
Page 23
11
2.2.1 AAC : (Advanced Audio Coding) เปนมาตรฐานการบบขอมลดจตอล ถกพฒนา
โดย Dolby, Fraunhofer (FhG), AT&T, Sony, Nokia และไดรบการรบรองโดย MPEG ในป 1997
โดยถกรวมเขาไปในมาตรฐาน part 7 ของ MPEG-2 และในมาตรฐาน part 3 ของ MPEG-4 ซงถก
ออกแบบมาเพอ ปรบปรงประสทธภาพของ MP3 (MPEG Layer 3) มหลกการทางานคอ ลด
จานวนขอมลทตองการในการนาเสนอเสยงทมคณภาพสง กาจดความซาของเสยงออกไป ตด
สวนประกอบทไมจาเปนออกไป ปจจบนถกใชในการเขารหสของแอปพลเคชนเชน iTunes และ
เครองเลน MP3 เชน iPod
2.2.2 MPEG เปนมาตรฐานการบบอดสญญาณภาพและเสยงของภาพเคลอนไหวโดย
การใชระบบ DCT หรอ Discrete Cosine Transform [10] ซงเปนการแทนคาตวแปลของ
สญญาณตางๆดวยสมการทางคณตศาสตร ซงคลายกบขนตอนการเขารหสภาพนงแบบ JPEG
(Join Picture Experts Group) แตจะลดขอมลทซาๆกนของภาพตอๆไป เพราะขนตอนในการ
เขารหสเพอบบอดสญญาณวดโอจะนานกวาขนตอนการถอดรหสขอมลออกไปเปนภาพและเสยง
MPEG-4[10] เปนไฟลวดโอประเภทหนงทมการบบอดขอมลใหมขนาดทเหมาะสมตอการ
สงผานไปยงการสอสารตาง ๆ ทกประเภท เชน โทรศพทมอถอหรอเวบไซต ในการนาเสนอภาพ
วดโอบนอนเทอรเนตเพอใหผใชสามารถเกบภาพตาง ๆ ในโทรศพทหรอเวบไซตได ซงถาตองการ
ความละเอยดมากขนขนาดไฟลกจะใหญตามโดยปจจบนขนาดภาพมหลายขนาดขนอยกบ
มาตรฐานของหนาจอโทรศพท โดยถกพฒนาขนเพอใชเปนมาตรฐานในการสงภาพเคลอนไหว
และเสยงในระบบดจตอลผาน network ความเรวตาไฟลทบบอดดวยมาตรฐานน รองรบการใช
งานผานระบบ network ทใชระบบหลายระแบบตงแต Modem 56k, GPRS จนถง Hi-Speed
Internet
Page 24
12
Scene Description
Interactivity
Synchronization
MPEG-J
(Java)
Audio
Speech
Synthetic Speech
Synthetic Audio
Visual
Video
Still Images
Text
2D Graphic
3D Graphic
Face and Body Animation
Intellectual Property Management and Protection
File Format
(Quick Time)
Data Transport
(Flexmux/Transmux)
รปท 2.6 แสดงสวนประกอบของ MPEG-4
MPEG-TS: เปน protocol สาหรบภาพ เสยง และขอมลซงระบไวใน MPEG-2 สวนท 1
ออกแบบสาหรบรองรบการทางานแบบ multiplexing ของขอมลวดโอ และการแสดงผล ใชในการ
สงขอมลแบบ broadcast ซงมความยดหยนสง โดยโปรแกรมทใชตอนนคอ VLC
2.2.3 DivX [9]: เปนการบบอดขอมล พนฐานซง เปนการบบอดไฟลในรปแบบและ
พนฐานการบบอดเดยวกนในตระกล MPEG-4 เมอตองการบบอดและเกบไฟลวดโอเกบไวบน
เครองคอมพวเตอรโดยไมทาใหเกดการสญเสยความคมชดมากไป DivX codec เมอทาการ
เขารหสนนคอ คณภาพของไฟลสงโดยทชวงของ bit rate ทตา DivX เปนสอวดโอแบบใหมทเปน
สอผสมของไฟลเสยงในรปแบบของ MP3 หรอ AC3 โดยทไฟลเสยงทงสองแบบทาใหไดวดโอ
คณภาพสง และเสยงทด
Page 25
13
รปท 2.7 แสดงสญลกษณ DivX
2.2.4 AVI : (Audio Video Interleave) เปน container format (.avi) ถกเสนอโดย
Microsoft ในเดอน พฤษจกายน 1992 AVI file ประกอบไปดวยขอมลภาพและเสยงทมคณภาพ
เทยบเทา DVD แตมขนาดใหญทาใหไมเปนทนยมเทาทควร
2.2.5 OGG: เปน container format (.ogg) คอรปแบบอยางหนงทมกลมของเลขทเปน
การเขารหสของภาพ, เสยงและกลมขอความ ทไดรบความนยมเนองจากไมมคาใชจายและมขนาด
เลก รองรบการเขารหสไดหลายแบบ
2.3 การสงขอมลแบบ On-demand content and live broadcasts การสงขอมลแบบ On-demand และ live broadcasts มความแตกตางทสาคญในเงอนไข
รปแบบการสงขอมลระหวางการถายทอดสด (Live) และตามความตองการ (On-demand)[1]
ลกษณะการสงขอมลแบบ On-demand ประกอบดวยรปแบบขอมลของผผลต, ขอมลทเกบไวใน
เวบเซอรฟเวอร (Web server) หรอวดโอเซอรฟเวอร (Video server) ซงเปนประโยชนกบผใชทก
เวลา, และขอมลเหลานถกสงไปตามความตองการ ผใชสงสญญาณรองขอไปยง เซรฟเวอร,
ตวอยางเชน โดยการเลอกเวบไซททเชอมตอ เพอความตองการเชน ภาพยนตร หรอมวสกวดโอ
เซอรฟเวอรรบทราบขอมลการรองขอน และเรมทาการสงขอมลทผใชรองขอมาไปให
การสงแบบถายทอดสด (Live broadcast) ไมไดมขอมลทเกบไวกบ เซอรฟเวอร แมวา
ขอมลถกระบทอยเมอขอมลถกระบททจะสงไป ขอมลทสงไปนถกสรางโดยตวเขารหส ซงเปน
ระบบดจทล (digital) ทาการเขารหสและสงสญญาณเสยงหรอภาพไปยงเซอรฟเวอร ในทนท ซรฟ
เวอร รบชดขอมลจากตวเขารหสและสงไปยง client ซงเมอเรยกทอยเดยวกนอกทงการคดคานการ
สงขอมลแบบ on-demand เชนเดยวกบขอมลทถกสงไปยงผใชในชวงเวลาทแนนอน
จากความเหนของ client ไมมความแตกตางระหวางการสงขอมลแบบ live และ on-
demand โดยทงสองกรณ โปรแกรมของผใชรบขอมลทมการสงคงทตามทไดชวงความถมา, ซงจะ
เลนวนจนกวาเซรฟเวอร ถกรบกวน หรอผใชยกเลกการทางาน
Page 26
14
2.5 Bandwidth Streaming แตกตางจากขอมลแบบอนๆในสวนชวงของแบนวดชทเตมท ซงเปนไปไดทจะ
ถกเขารหส จาเปนอยางยงทตองกาหนดขนาดแบนวดช (อตราการสงขอมลอาจแตกตางกนไดแม
ถกจากดขนาดแบนวดช) streaming อาจจะถกสงไดในแบบตงแต โทรศพทอนาลอกจนถง high-
speed ของอนเตอรเนต [1]
จดเรมตนสาหรบเสยงทไมมการบบอด มอตราการสงใกลเคยงกบ 3 Mbits/s จาก CD
สาหรบวดโอมมารตฐานการเชอมตออยท 270 Mbits/s การบบอดถกใชกบ Digital Video
Camcorder ซงมอตราการบบอดอยท 25 Mbits/s (แมวาสามารถสงทอตราทแตกตางกนผาน
ตวเชอม IEEE 1394)
Streaming media ทาการบบอดขอมลเพอใหสมพนธกบของผใช ซงเปนไปไดหลากหลาย
เชน โมเดมทใชระบบอนาลอกจะมอตราทการสงท 56 kbits/s แมวาจะมหลายผใชท 28 kหรอ14 k
การเชอมตอสวนใหญอางองกบอตราการสงทสง แตหลายๆครงไมสามารถทาได ยกเวน
ISDN และ T-1 ซงอตราขอมลไดมการรบรอง การเชอมตอของโมเดมจะถกจากดโดยสภาพจราจร
กระจายในสาย มการเกบตวประกอบทเหมอนกบตวรบกวนสญญาณ สายโมเดมใชการแชร
Server และ Client ถาทกๆคนพยายามทจะใชแบนวดชทสงๆพรอมๆกนทาใหเกดการแยงแบน
วดชจะเปนเหตใหความสามารถในการ stream DSLลดลง คอนขางเหมอนกบอนาลอกโมเดม จะ
ถกจดโดยสภาพการจราจรในสาย
2.6 การวดประสทธภาพ Utilization: คอสวนหรอรอยละของแตละแหลงขอมลทมการใชงานมากทสด เชน คามากทสด 10
Mbits ในการสงขอมล แตสามารถสงได 2 Mbits นนหมายความวา ม utilization 20% โดยสวน
ใหญ อปกรณ input/output ทม utilization 60%-70% ซงถอวามคาสง
Latency: จานวนของเวลาท ผใชรอการตอบรบจากระบบ หรอ delay time
Throughput: ปรมาณการทางานไดเทยบกบเวลา สวนใหญจะนามาเทยบกบLatency
Efficiency: ประสทธภาพในการทางานของผใหบรการ เชนจาก Hardware (CPU, Hard disc)
Interrupt การขดจงหวะ CPU ในการรองขอของแตละ connection ทเขามา
Datagram received จานวน datagram ทไดรบจาก client
Datagram จานวน datagram ทงหมด
Process time เวลาททาการ process ของ CPU
Datagram received error จานวน datagram ทไดรบผดพลาด
Datagram sent จานวน datagram ทสงออกไป
User time จานวนครงท client ตดตอมา
Page 27
15
บทท 3
การทดสอบและผลการทดสอบเบองตน การทดสอบ เราจะใชโปรแกรมจานวน 2 โปรแกรมดวยกน คอ Darwin Streaming Server
เวอรชน 5.5.3Windows [1] และ VLC (Video LAN Client) เวอรชน 0.8.2-Win32 [1] เครอง
เซรฟเวอร ทใชมลกษณะดงน
CPU: Intel®Pentium D 3.0 GHz
RAM: 512 GHz DDR2
LAN Card: Realtek RTL 8168/8111 PCI-E Gigabit Ethernet NIC
OS: Windows 2003 Server ServicePack1
ทางดาน Client เราจะไมคานงถงลกษณะ เนองจากในการความเปนจรง ไมสามารถจะกาหนดวา
client จะตองใชระบบปฎบตการอะไร แตควรมการรองรบการทางาน ของ protocol ตางๆ รวมทง
การถอดรหสอกดวย
โดยการออกแบบเบองตน ใชเครองเซรฟเวอร จานวน 1 เครอง สวตช COMPEX รน
SAS2224B ขนาด 24 พอรต 1 เครอง และจานวนเครอง client 10 เครอง ดงรป
รปท 2.8 แสดงการออกแบบการทดสอบ
เนองจากโปรแกรม VLC ทาการสงแบบ Multicast แตในการทดสอบ ทาการสงแบบ broadcast
จงเปลยนมาใชโปรแกรม Windows Media Encoder มาใชในการการทดสอบ
Page 28
16
สาหรบการวดประสทธภาพเราใช โปรแกรม perfmon.exe ของ Windows XP ซงกาหนด
ตววดประสทธภาพคอ UDP, TCP, Memory Cache, CPU Process โดยทาการวดทละโปรแกรม
และทาการสงขอมลพรอมกน
จากการทดสอบ ไดกาหนดรปแบบการทดสอบ ดงน[12]
- เพม client ทละ 1 จนครบ 4 clients โดยหางกนทกๆ 5 วนาท แลวหยดการสงขอมล
- ให clients เขามาพรอมกนทง 4 clients แลวคอยๆลด client ทกๆ 5 วนาท จนครบ
- ให client ทาการรองขอพรอมกน แลวหยดการสงขอมลพรอมๆกน
- วดประสทธภาพตงแตเรมทาการสงขอมล แลวคอยๆเพม client จนครบ แลวคอยๆลด
client จนครบ แลวหยดการสงขอมล
จากผลการทดสอบเบองตน ผลทไดมความคลาดเคลอน ดงในรป กราฟของ UDP Sent/sec นน
จานวน client ท 3 และ 1 client นนมคาใกลเคยงกน แทบจะไมเหนความแตกตางกน ทาใหตองม
การออกแบบการทดสอบใหมโดยเพมจานวน clients เปนจานวน 10 clients ดงรป
ผลการทดสอบทได มดงน
ซงผลทไดนน เปนไปตามสมมตฐานทคาดไว
รปท 3.1 กราฟแสดงความสมพนธระหวางปรมาณ UDP Datagrams Received ตอ วนาท และ
เวลาเมอเพมจานวน client
จากกราฟเมอเพมจานวน clients ณ เวลาตางๆกนจะสงเกตไดวาปรมาณของดาตาแกรม
เพมขนตามจานวนของ client ทกๆ 5 วนาท จนครบ 10 clients และเมอหยดการสงขอมลทาให
ปรมาณดาตาแกรมลดลงทนท
Page 29
17
รป 3.2 กราฟแสดงความสมพนธระหวางปรมาณ UDP Datagrams Sent ตอวนาท และเวลาเมอ
เพมจานวน client
จากกราฟเมอเพมจานวน clients ขนทกๆ 5 วนาทกราฟมความชนมากขน เพราะม
ปรมาณ UDP เพมมากขน เมอครบ 10 clients แลวหยดทาการสงขอมล กราฟทไดจะหยดการสง
ขอมล
รปท 3.3 กราฟแสดงความสมพนธระหวางปรมาณ UDP Datagrams ตอวนาท และเวลาเมอเพม
จานวน client
จากกราฟรปท 3.1-3.3 เมอมปรมาณของผใชเพมมากขน ปรมาณของจานวนดาตาแกรม
มปรมาณเพมมากขนดวย แตหากหยดการสงขอมลจานวนดาตาแกรมมปรมาณลดลงทนทจน
หมด แสดงใหเหนวาหากมจานวนผใชเพมมากขนทาใหมจานวนดาตาแกรมเพมมากขนดวย
Page 30
18
รปท 3.4 กราฟแสดงความสมพนธระหวางปรมาณ UDP Datagrams Received ตอวนาท และ
เวลาเมอลดจานวน client
จากกราฟจะเหนไดวาปรมาณ UDP อยท 200 ดาตาแกรม เมอม client 10 clients
หลงจากนนทาการลดจานวน clients ลงทกๆ 5 วนาทเรมตนวนาทท 40 จนหมด clients ทาให
กราฟมความชนลดลง
รปท 3.5 กราฟแสดงความสมพนธระหวางปรมาณ UDP Datagrams Sent ตอ วนาท และเวลา
เมอลดจานวน client
จากกราฟจะเหนไดวาปรมาณ UDP อยทประมาณ 200 ดาตาแกรม เมอม client 10
clients หลงจากนนทาการลดจานวน clients ลงทกๆ 5 วนาท จนหมด clients ทาใหกราฟมความ
ชนลดลง
Page 31
19
รปท 3.6 กราฟแสดงความสมพนธระหวางปรมาณ UDP Datagrams ตอวนาท และเวลาเมอลด
จานวน client
จากกราฟท 3.4-3.6 เมอมจานวนผใชรองขอพรอมๆกนจานวน 10 clients ทาใหกราฟของ
ดาตาแกรมมจานวนสงมากขน เมอลดจานวนผใชจานวนดาตาแกรมจะลดลงจนหมด
รปท 3.7 กราฟแสดงความสมพนธระหวางปรมาณ UDP Datagrams Received ตอ วนาท
จากกราฟท 3.7 จะเหนไดวากราฟมลกษณะความชนสงขนเมอมจานวน client ทกๆ 5
วนาท เมอครบ 10 clients ทาการลดจานวน client ลง ทาใหความชนลดลง
Page 32
20
รปท 3.8 กราฟแสดงความสมพนธระหวางปรมาณ UDP Datagrams Sent ตอวนาท และเวลา
เมอเพมและลดจานวน client
จากกราฟ 3.8 เปนการทดสอบเมอเรมทาการสงขอมลแลวม client เขามาทกๆ 5 วนาท
จนครบ 10 วนาท แลวจงลดจานวน clients ทกๆ 5 วนาท การฟทไดจงมความชนมากขนเมอม
client มากขน และกราฟมความชนลดลงเมอ clients ลดลง
รปท 3.9 กราฟแสดงความสมพนธระหวางปรมาณ UDP Datagrams ตอ วนาท และเวลาเมอ
เพมและลดจานวน client
จากกราฟท 3.7-3.9 กราฟทง 3 นแสดงภาพรวมของการสงขอมลเมอเพมผใชและลดผใช
กราฟทไดมลกษณะมความชนมากขน จนถงจดๆหนงแลวความชนคอยๆลดลง เนองจากขณะทม
ผใชมากขนจะทาใหปรมาณของดาตาแกรมมากขน ในขณะเดยวกนเมอลดจานวนของผใชทาให
ปรมาณของดาตาแกรมลดลงดวย
Page 33
21
รปท 3.10 กราฟแสดงความสมพนธระหวาง Processor interrupt ตอเวลา
จากกราฟท 3.10 กราฟมลกษณะมความชนมากขนเมอมจานวนผใชเพมมากขน แสดงให
เหนวา หากมจานวนผใชรองขอเขามามากขน จะทาใหมการะบวนการประมวลผลสงขน
รปท 3.11 กราฟแสดงความสมพนธระหวางProcessor interrupt ตอเวลา
จากกราฟ 3.11 กราฟมความชนลดลงเมอจานวนผใชลดลงแสดงใหเหนวา เมอลดจานวน
ผใชทาใหการประมวลผลดลงดวย
Page 34
22
รปท 3.12 กราฟแสดงความสมพนธระหวาง Processor interrupt ตอเวลา
จากกราฟท 3.12 ไดแสดงการประมวลผลทงหมดเมอมการรบกวนจากผใชมากขน การ
ประมวลมลมอตราทสงขน และเมอลดจานวนผใชทาใหการประมวลผลลดลง ตอไปเปนการทดสอบการสงขอมลโดยใช Windows Media Encoder ซงทาการสงขอมล
ซงทาการสงโดยเรมตนการสงขอมล แลวมการรองขอจาก client ทกๆ 10 วนาท จนมจานวน 5
clients แลวหยดการรบขอมลของ clients ทกๆ 10 วนาท ซงผลการทดลองทไดมดงน
รปท 3.13 กราฟแสดงความสมพนธระหวางปรมาณ UDP Datagrams Received ตอเวลา
จากกราฟท 3.13 เปนปรมาณขอมลแบบ UDP ท client ไดรบเมอมการรองขอขอมลจาก
client ซงกราฟจะมลกษณะสงขนแลวตกลงมา หลงจากนนจะมการเพมขนมาเลกนอยเปน
ระลอกๆ
Page 35
23
รปท 3.14 กราฟแสดงความสมพนธระหวางจานวน UDP Datagrams Sent ตอเวลา
จากกราฟท 3.14 แสดงปรมาณการสงขอมล เมอมการรองขอจากผใช ซงกราฟมลกษณะ
สงขนในครงแรกหลงจากนนจะมลกษณะเปนคลน
รปท 3.15 กราฟแสดงความสมพนธระหวางจานวน UDP Datagrams ตอเวลา
จากกราฟท 3.15 เปนกราฟแสดงภาพรวมปรมาณ UDP ทงหมด จะเหนไดวามแนวโนม
คลายคลงกบกราฟท 3.13 และ 3.15
Page 36
24
รปท 3.16 กราฟแสดงความสมพนธระหวาง Processor ตอเวลา
จากกราฟ 3.16 แสดงการทางานของ CPU เมอเรมการทางานจะมลกษณะสงในตอนแรก
แลวลดการทางานลงมา หลงจากนนเมอม client เขามาจะมการทางานทกระโดดขน เปนระยะๆ
รปท 3.17 กราฟแสดงความสมพนธระหวางการ Processor interrupts ตอเวลา
จากกราฟท 3.17 เมอมการ interrupt จาก client จะทาใหการทางานของ CPU เพมขน
หากเมอไมมการ interrupt จะมการทางานปรกต
Page 37
25
รปท 3.18 กราฟแสดงความสมพนธระหวางการทางานของ Processor Interrupt ตอเวลา
จากกราฟ 3.18 จะเหนไดวาเมอม client เขามา interrupt จะมการทางานของ CPU
กระโดดขนมา เปนชวงๆ เชน ทวนาทท 25 มการทางานเพมขนเมอม interrupt เขามาและท วนาท
ท 55 มการinterrupt อกครง ทาใหเพมการทางานของ CPU เชนกน
รปท 3.19 กราฟแสดงความสมพนธระหวางการใช Memory cache Bytes ตอเวลา
กราฟท 3.19 เปนการแสดงการจองเนอทของขอมลทใชในการสงขอมล ซงมลกษณะเพม
มากขน แตเมอหยดการสงขอมล จะทาใหกราฟตกลงมา
Page 38
26
ทาการทดลองเปรยบเทยบการทางานของทงสอง Application Server นนคอ Darwin
Streaming Server และ Windows Media Encoder โดยกาหนดสถานการณดงน
ทาการสงขอมลพรอมกน แลวให clients ทาการรองขอขอมลเขามาทเซอรฟเวอรทกๆ 5
วนาท หลงจากนนจงให clients หยดรบขอมลทก 5 วนาทแลวทาการหยดการสงขอมล ผลการ
ทดลองทไดมดงน
รปท 3.20 กราฟแสดง Datagams Received ท client ไดรบตอวนาท
จากกราฟท 3.20 เมอเพมจานวนผใช กราฟของ Darwin Streaming Server มความชน
มากขนแลวคอยคงท สวนกราฟของ Windows Media Encoder มปรมาณกาตาแกรมทตามาก
รปท 3.21 กราฟแสดง Datagrams ทงหมดตอวนาท
Page 39
27
รปท 3.22 กราฟแสดง Datagrams Sent (ทสงออกไป) ตอวนาท
รปท 3.23 กราฟแสดงการใช Memory cache Bytes
จากกราฟท 3.23 ไดมการจองพนทเกบขอมลทใชในการสงขอมล กราฟของ Darwin
Streaming Server และกราฟของ Windows Media Encoder มการจองพนทของขอมลเรมตน
ใกลเคยงกน แตจากกราฟ Darwin Streaming Server จะมการจองพนทมากกวา Windows
Media Encoder
Page 40
28
รปท 3.24 กราฟแสดงการทางานของ CPU เมอมการ Interrupts
จากกราฟท 3.24 เปนการประมวลผลการทางานของ Darwin Streaming Server และ
Windows Media Encoder ขณะมการรองขอจากผใช ซงเมอมผใชเขามาทาใหการประมวลผล
สงขนทนท
รปท 3.25 กราฟแสดงความสมพนธระหวางการทางานของ CPU ตอเวลา
จากกราฟท 3.25 เปนการประมวลผลการทางานของ CPU ขณะทาการสงขอมลดวย
Darwin Streaming Server และ Windows Media Encoder สงเกตไดวากราฟของ Darwin
Streaming Server มการทางานคอนขางคงท เนองจากมการสงขอมลอยางตอเนอง ในขณะท
Windows Media Encoder ทาการสงขอมลครงแรกใหผใชเกบขอมลเปน buffer สวนหนงทาให
กราฟมลกษณะความชนสงขนแลวตาลงทนท แลวคอยทาการสงตอไปเรอยๆ ซงมการเพมของ
ความชนตอเวลา
เมอนาการทดสอบมาดในแตละสวนของการทางานเพอหาความสมพนธในสวนตางๆ
ซงกราฟตอไปนเปนการทางานของ Windows Media Encoder
Page 41
29
รปท 3.26 กราฟแสดงความสมพนธระหวางการทางานของ Processor Interrupt ตอเวลา
จากกราฟท 3.26 แสดงใหเหนวาเมอม interrupt จาก client จะเหนไดวามการทางานของ
CPU สงขนทชวงเวลาตางๆ
รปท 3.27 กราฟแสดงความสมพนธระหวางการทางานของ Processor ตอเวลา
จากกราฟท 3.27 จะสงเกตไดวาเมอม interrupt จากผใชเขามามาก จะทาใหการทางาน
ของ CPU สงขน
Page 42
30
รปท 3.28 กราฟแสดงการจองพนทใน Memory Cache เมอจานวน Client เพมขนเรอยๆ
ซงเมอมการสงขอมลแลว มการจองพนทของหนวยความจามากขน และเมอหยดการสงขอมลจะ
ทาใหลดการใชพนทหนวยความจาลงไป
รปท 3.29 กราฟแสดง Datagrams Received ตอเวลา
จากกราฟท 3.29 จะเหนไดวาเมอเรมสงขอมลไปแลวจะมการเพมของปรมาณดาตาแกรม
ตามจานวนของ client และปรมาณลดลงเมอลดจานวน client
Page 43
31
รปท 3.30 กราฟแสดง Datagrams Sent ตอเวลา ทสงออกไป
ซงปรมาณของดาตาแกรมทงหมดทสงออกไปและรบเขามา ไดดงกราฟขางบนน จะเหนไดวา
แนวโนมเปนไปตามกราฟของ UDP Sent และ UDP Received
กราฟตอไปนแสดงการทางานของ Darwin Streaming Server
รปท 3.31 กราฟแสดง Processor Interrupt Time ของ CPU
เมอนามาเปรยบเทยบกนจะเหนไดวา กราฟทไดเมอมปรมาณของ client เขามามากจะมการ
ทางานของ CPU ทคอนขางสง ในหลายๆชวงของกราฟ
Page 44
32
รปท 3.32 กราฟแสดง Memory Cache Bytes
จากกราฟท 3.32 จะเหนไดวากราฟมความชนสงขน เนองจากมการใชหนวยความจามากขนเมอม
client เขามามากขน
รปท 3.23 กราฟแสดง UDP Datagrams ตอ เวลา
เมอนาการจองพนทหนวยความจาขณะทาการสงขอมลและปรมาณของ UDP ทงหมดมา
เปรยบเทยบกนจะเหนไดวา เมอม client เขามามากขนจะมปรมาณของดาตาแกรมสงขนและม
การใชหนวยความจามากขนดวย เมอลดจานวน client ลงมปรมาณดาตาแกรมลดลงและการใช
หนวยความจาคงท
สรปผลการทดสอบ เมอทาการทดสอบโปรแกรมตางๆและทาการวดผลการทดสอบตางๆ
ผลทไดจะมลกษณะสมพนธกน ซงในทนเปนการวเคราะหผลการทดสอบเบองตนเทานน
Page 45
33
บทท 4
บทสรปและขอเสนอแนะ
4.1 บทสรปการดาเนนงาน การดาเนนงานโดยรวมตงแตเรมวางแผนการทางานนน โดยสวนใหญแลวจะเปนไปตาม
แผนการดาเนนงานทไดวางแผนไว ตงแตการศกษาการทางานของเซรฟเวอร แตละแบบ การ
ทดสอบการทางานของเซรฟเวอร รวมทงการศกษาการวดประสทธภาพดวยเครองมอตางๆ
หลงจากทวประสทธภาพไดแลวจงจะนาผลทไดมาประมวลผลและสรป
4.2 ปญหาทพบในการดาเนนงาน ปญหาทพบสวนใหญจะเปนการทดสอบเซรฟเวอร แตละแบบเนองจากมความซบซอน
และยงยาก, มการปรบตงคาตางๆมาก ทาใหตองใชเวลาในการศกษาและทดสอบพอสมควร
รวมทงปญหาในการหา clients ทตองใชจานวนมาก และในการหาเครองมอทจะนามาวด
ประสทธภาพ เนองจาก software สวนใหญมลขสทธ และมราคาคอนขางสง จงตองหา freeware
ทเหมาะสม และมความสามารถเพยงพอทจะไดผลทเราตองการนามาประมวลผลตอไป
4.3 ขอเสนอแนะและแนวทางแกไข ตองมการวางแผนการทางานใหรดกมและเปนขนเปนตอน เพอใหประหยดเวลาและ ใช
เวลาใหคมคา เพอจะไดนาเวลาทเหลอมารวบรวมและสรปผลการทางานตางๆ
Page 46
34
ภาคผนวก ก ขนตอนตดตง Active Perl
จากคมอการตดตง Darwin Streaming Server นน ตองการตดตง Active Perl 5.8 ขนไป
เพอเปน interpreter ใหกบ software โดยจากการทดสอบน เราใช ActivePerl-5.8.8.816-
MSWin32-x86 ในการทดสอบ โดยการตดตงมดงตอไปน
1. จาก folder ของ ActivePerl ทาการแตก file ออกมาจะได ดงภาพ
รปท ก.1 แสดง folder ของ ActivePerl
2. ทาการ double click ท install.bat เพอทาการตดตง
รปท ก.2 icon โปรแกรม ActivePerl
Page 47
35
จะม Command Dos ขนมาดงรป
รปท ก.3 แสดงคาถามเปด License.txt
ใหทาการตอบ yes ดงภาพ
4.เลอก Folder ทจะทาการตดตง
รปท ก.4 แสดงการตดตงท directory c:\Perl
Page 48
36
5.หลงจากนนจะเปนการ Install โดยใหกด Enter
รปท ก.5 แสดงคาถามในการตดตง
6.หลงจากนนจะม จะมขอความตางๆ โดยทใหตอบ yes ทงหมดแลวกด Enter
รปท ก.6 แสดงคาถามตางๆ
Page 49
37
ภาคผนวก ข ขนตอนตดตง Darwin Streaming Sever
1.เขาไปใน Folder ทเกบตว Install แลว
2. Double คลก ท Installer.bat
รปท ข.1 icon โปรแกรม Darwin Streaming Server
3.หลงจากนนโปรแกรมจะทาการ Install และจะมการตรวจสอบ path ในขนตนของการตดตงครง
แรกจะมการตง Administrator user name และ password
รปท ข.2 แสดงการใสคา username
ในทนเราจะใสคา ดงน
Administrator user name: root, Password: root
Page 50
38
รปท ข.3 แสดงการใส password
4.โปรแกรมจะทาการทางานเปนเซรฟเวอร โดยตองใหหนาตางน ทางานตลอดเวลา
รปท ข.4 แสดงหนาตางสถานะการทางาน
Page 51
39
ขนตอนการตงคา สาหรบการทดสอบการทางานของโปรแกรม จะมการแบงการทางานเปนสวนๆ ดงน
DarwinStreamingServer.exe – เปนสวนของโปรแกรมททางานเปนเซรฟเวอร
PlaylistBroadcaster.exe – ทางานในสวนของการสงแบบ broadcast เปน playlist
MP3Broadcaster.exe – ทางานในสวนของ MP3 Broadcaster
qtpasswd.exe – เปนสวนการสงงานเปน Command-line สาหรบสราง password เพอควบคม
StreamingLoadTool.exe – จาลอง RTSP client
streamingadminserver.pl – สาหรบสวนของ Admin Server เพอเปน Admin
streamingserver.xml- เปนสวนของหนา webpage สาหรบการปรบตงคาการทางาน
relayconfig.xml-Sample – ปรบตงคา Sample relay
QTSSModules\ - แฟมประกอบดวยสวนประกอบ QTSS API
Movies\ - แฟมเกบขอมล multimedia
Playlists\ - แฟมเกบขอมลการปรบตงคา playlist
Logs\ - แฟมสาหรบเกบขอล การทางานตางๆของ โปรแกรม, คา error ตางๆ
AdminHtml\ - แฟมเกบขอมลประกอบดวย CGIs และ HTML ท Admin ตองการr
Documentation\ - แฟมขอมลการตดตง สาหรบการทดลองเบองตนนนจะเปนการทางานแบบ Broadcast โดยขนตอนนจะอธบายสวนของ
webpage สาหรบการปรบตงคาของ Admin
1. เขาสหนา IE (Internet Explorer) ท URL ใส URL ดงน http://localhost:1220 localhost คอ สวนของเซรฟเวอร ทอยทเครองเอง
1220 คอ ระบ port ทใชงาน
Page 52
40
2. จะเขาสหนาของ web configuration
รปท ข.5 จะเปนสวนทใส username และ password ของ Administrator
รปท ข.6 จะใส User Name: root, Password: root
Page 53
41
รปท ข.7 จากรปจะเปนการใสคา mp3 broadcast password เพอสทธการสงขอมล
รปท ข.8 จากรปจะเปนสวนของการ ระบ Assistant Secure Administrator(SSL) ในทนเราระบ
Page 54
42
รปท ข.9 จากรปจะเปนการระบแฟมทใชเกบขอมล multimedia
รปท ข.10 จากรประบการใชงาน port 80 ในทนจะระบไวใหทางานได
Page 55
43
รปท ข.11 จากรปสวนนเปนสวนของหนาหลกบอกขอมลตางๆดงน
Server: ชอในระบบของเซรฟเวอร
Status: สถานะการเรมทางาน
Current Time On Server: เวลาปจจบน
Uptime: เวลาทใชทางาน
DNS Name (deafult): ชอในระบบของเซรฟเวอร
Server Version: ระบรนของเซรฟเวอร
Server API Version: API version ของเซรฟเวอร
CPU Load: การทางานของ CPU
Current Throughtput: ปรมาณการทางาน ณ ขณะนน
Total Bytes Served: จานวนขอมลทงหมดทสงไปเปน Bytes
Total Connect Served: จานวนเครองททาการตดตอ
Page 56
44
ทางฝง client ใช protocol RTSP ในการรบขอมล โดยใช Quick Time Player ใชคาสงดงน
1. ไปท File>>Open URL
รปท ข.12 หนาตางการเรยกขอมลจากเซรฟเวอร
2. ทาการใส URL ดงน
“rtsp://10.161.68.51/Ex.sdp”
รปท ข.13 แสดงการใส URL
ip ทระบคอ ip ของเซรฟเวอร และระบ playlist ดวย
Page 57
45
ภาคผนวก ค ขนตอนการตดตง VLC (VideoLan Client)[12]
1. installer มลกษณะดงน
รปท ค.1 icon โปรแกรม VLC
2. ทาการตดตงลงบนเครอง ตวโปรแกรมจะมหนาตาเปนดงรป
รปท ค.2 interface ของโปรแกรม
3. การสงขอมลทาไดโดย ไปท File >>> Wizard
รปท ค.4 การเรยกขอมลผานหนา interface
Page 58
46
4. เปนหนาจอใหทาการสงขอมล ใหเลอก Stream to network
รปท ค.5 การเลอกการทางาน
5. ทาการเลแก file หรอ playlist ทจะสง เลอก Choose
รปท ค.6 แสดงการเลอก file ในการสงขอมล
Page 59
47
6. ทาการเลอก file multimedia ทจะทาการสง
รปท ค.7 แสดงขอมลทจะทาการสง
Page 60
48
7. เลอกวธการสง หากสงแบบ unilticast จะระบ ip ทจะสงไป หากใช multicast จะเปนการสง
แบบระบ ขอบเขตทจะสงไป
รปท ค.8 ระบหมายเลข ip ทตองการจะสง
Page 61
49
8. เลอกรปแบบการสงในทนมใหเลอกแบบ MPEG TS
รปท ค.9 การเขารหสในการสงขอมล
Page 62
50
9. กาหนด Time-To-Live กาหนดเปน 10
รปท ค.10 การตงคา TTL
10. โปรแกรมจะทาการสงขอมลไป
รปท ค.11 interface ขณะทาการสงขอมล
สวนทางฝง client ทาการรบโดยเขาไปท command dos ระบ
vlc udp:10.161.68.73 (ip server)
Page 63
51
ภาคผนวก ง. ขนตอนการตดตง Windows Media Encoder
WMEncoder.exe รปทง. icon โปรแกรม Windows Media Encoder
รปทง.2 แสดงหนาของโปรแกรม Windows Media Encoder
Page 64
52
รปทง.3 เมอเลอก Properties เปนการกาหนดคา parameter ตางๆ ในทนตงชอวา “test”
รปทง.4 ทาการเลอก File แลว browse ท file นน
Page 65
53
รปทง.5 เลอก Port ทจะทาการสงขอมล โดยในทนเลอกเปน 1082
รปทง.6 กาหนดการสงขอมล และ bit rates เลอกเปน 202 Kbps
Page 66
54
รปทง.7 ขนาดของหนาตางการแสดงผล
รปทง.8 กาหนด attributes ตางๆเชน title, author เปนตน
Page 67
55
รปทง.9แสดง file ทนามาสงขอมลและภาพขณะสงออกไป
รปทง.10 แสดง Statistics ตางๆ
Page 68
56
รปทง.11แสดงรายละเอยดของ clients ทเขามา request
รปทง.12 แสดงเหตการณตางๆ ขะณทาการสงขอมล
Page 69
57
รปทง.13 แสดงผลการสงขอมลเมอทาการสงเสรจสน
สวนทางฝ clients สามารถรบขอมลแบบ live broadcast โดยการพมพท URL
mms://[IP Server หรอ Server name]:[Port number]j
Page 70
58
บรรณานกรม [1]”Darwin Streaming Server 5.5.4”:
http://developer.apple.com/opensource/server/streaming/
[2] David Austerberry, “The Technology of Video and Audio Streaming(2nd Ed.)”
[3] H.Schulzrinne, A. Rao, R. Lanphier , Colibbia, “Real Time Streaming Protocol
(RTSP)”, University/Netscape/RealNetworks, Engineering Task Force INTERNET-DRAFT
[4]”MMS”: http://en.wikipedia.org/wiki/Microsoft_Media_Services
[5]”RTP”: http://www.cs.columbia.edu/~hgs/rtp/
[6] Ville Hallivuori, Halsinki University of Technology, [email protected] , “Real-time Transport
Protocol (RTP) security”
[7] “Real Time Protocol”: http://en.wikipedia.org/wiki/Real_Time_Streaming_Protocol
[8] “Real-time Streaming Protocol”:http://www.rtsp.org/
[9] “DivX”: http://www.divx.com/company/about/
[10] “MPEG-4”: The new Standard for Multimedia on the Internet powered by Quicktime
[11] Yuka Kato,DongMei Jiang and Katsuya Hakozaki, Graduate School of Informatio
Systems University of Electro-Communications, Tokyo Japan,”A Proposal of Streaming
Video System Adapting to Various System Environment and its Implementation”
[12]“VLC”: http://www.videolan.org/vlc/
[13]“SIGTRAN”: http://en.wikipedia.org/wiki/SIGTRAN