wk-2โปรแกรมประยุกต์บนเครือข่าย

Download Report

Transcript wk-2โปรแกรมประยุกต์บนเครือข่าย

โปรแกรมประยุกต์บนเครื อข่าย
Network Application
(ทบทวน) เปรียบเทียบรูปแบบของเครือข่ าย
(ทบทวน) รู ปแบบการส่ งข้ อมูลในแต่ ละชัน้
(ทบทวน) ตัวอย่ างการส่ งข้ อมูลตามโปรโทคอล
วัตถุประสงค์ การเรี ยนรู้
 เข้าใจหลักการทางานของโปรแกรมคอมพิวเตอร์บน
based และสถาปตั ยกรรม client-server
host-based , client-
 เข้าใจหลักการทางานของเว็บ (WEBs)
 เข้าใจหลักการทางานของอีเมล์ (e-Mail)
 ตระหนักถึงการใช้งานโปรแกรมประเภท Instant messaging
เนือ้ หาการเรี ยนรู้
 สถาปตั ยกรรมของโปรแกรมประยุกต์ (Application Architectures)
Host-Based Architectures
 Client-Based Architectures
 Client-Server Architectures
 Peer-to-Peer Architectures
 การเลือกใช้สถาปตั ยกรรมทีเ่ หมาะสม

 หลักการทางานของเว็บ (WEBs)
 การทางานของอีเมล์ (e-Mail)
 โปรแกรมบนระบบเครือข่ายอื่น ๆ
บทนา
 การทางานบนระบบเครือข่ายคอมพิวเตอร์ จาเป็ นต้องใช้โปรแกรมคอมพิวเตอร์
เพือ่ ให้เครือ่ งคอมพิวเตอร์สามารถทางานร่วมกันได้
 ทัง้ นี้ ระบบเครือข่ายคอมพิวเตอร์จะต้องมีระบบปฏิบตั ก
ิ ารเครือข่าย (NOS-
Network Operating System) เพือ่ ให้สามารถติดต่อสือ่ สารได้ระหว่างเครือข่าย
 ผูใ้ ช้จงึ จาเป็ นต้องเข้าใจว่าโปรแกรมคอมพิวเตอร์ (Application) จะสามารถ
ทางานร่วมกับเครือข่ายได้อย่างไร
 การทางานร่วมกันระหว่างเครือข่ายคอมพิวเตอร์และโปรแกรมคอมพิวเตอร์
จะต้องอาศัยโปรโทคอล (protocol) ทีเ่ หมาะสม
สถาปั ตยกรรมของโปรแกรมคอมพิวเตอร์
(Application Architectures)
 คือการออกแบบรูปแบบการทางานของโปรแกรมประยุกต์ให้เหมาะสมกับการใช้
งานร่วมกับเครือข่ายคอมพิวเตอร์
 ส่วนประกอบสาคัญทีช
่ ว่ ยให้คอมพิวเตอร์สามารถทางานร่วมกันผ่านระบบ
เครือข่ายได้ คือ
 Data Storage
 Data Access Logic (การเข้าถึงข้อมูล)
 Application Logic (กระบวนการเข้าถึงข้อมูล หรือ Business Logic)
 Presentation Logic (การนาเสนอข้อมูลต่อผูใ้ ช้)
สถาปั ตยกรรมของโปรแกรมคอมพิวเตอร์
(Application Architectures)
 การทางานของทัง้ 4 ส่วนทีก
่ ล่าวมา จะทางานอยูภ่ ายบนสถาปตั ยกรรมเครือข่าย
4 แบบ ได้แก่
 Host-Based
Architectures
 Client-Based Architectures
 Client-Server Architectures
 Peer-to-Peer Architectures
Host-Based Architectures
 เป็ นรูปแบบเครือข่ายคอมพิวเตอร์ทเ่ี ริม
่ พัฒนาขึน้ มาใช้งานเมือ่ ปี

1960
เครือ่ งลูกข่าย (Client) จะส่งข้อมูลไปประมวลผล โดยรับข้อมูลจากผูใ้ ช้ดว้ ย
แป้นพิมพ์ และส่งข้อมูลไปยังเครือ่ งแม่ขา่ ย (Server) เพือ่ ประมวลผล
 โปรแกรมประยุกต์หรือ Application จะติดตัง้ อยูบ
่ นเครือ่ ง Server เท่านัน้
Host-Based Architectures
 ข้อดีของ Host-Based คือ มีการควบคุมจากจุดเดียว สะดวกสาหรับผูด
้ ูแลระบบ
 ระบบมีขนาดไม่ใหญ่ ประหยัดงบประมาณในการติดตัง้
ั หาข้อมูลล้น
 การส่งข้อความจะส่งไปยังเครือ่ ง Server เท่านัน้ อาจเกิดปญ
(overload) ไม่สามารถประมวลผลได้ทนั ท่วงที หรืออาจทาให้ระบบล่ม
 เมือ่ ข้อมูลล้น จึงต้องมีการขยายขนาดของระบบ ซึง่ อาจส่งผลให้สน
้ิ เปลือง
งบประมาณ และเกิดความยุง่ ยากในการปรับปรุงระบบ
Client-Based Architectures
 ช่วงปี
1980 เครือ่ งคอมพิวเตอร์สว่ นบุคคล (PC-Personal Computer) ได้รบั การ
พัฒนาจนมีความสามารถในการทางานใกล้เคียงกับเครือ่ งแม่ขา่ ย (Server)
 เครือ่ ง PC มีราคาต่ าลง
 โปรแกรมประยุกต์ (Application) หลายโปรแกรม เป็ นทีน
่ ิยมและมีผใู้ ช้งานแบบ
ส่วนตัวมากขึน้ (เช่น โปรแกรมประเภท Word, ฐานข้อมูล)
 ผูใ้ ช้ไม่สะดวกในการส่งข้อมูลไปยังเครือ่ ง Server
 ลดบทบาท Server ลง เหลือเพียงเครือ่ งสาหรับเก็บข้อมูลเท่านัน้
Client-Based Architectures
 Client จะทาหน้าทีเ่ รือ่ ง Presentation Logic
 ส่วนใหญ่เป็ นการเชื่อมต่อในรูปแบบของเครือข่าย LAN
 เครือ่ งลูกข่าย (client) เป็ นเครือ่ ง PC ทัวไป
่ ส่วนเครือ่ งแม่ขา่ ย (server) อาจเป็ น
เครือ่ งทีม่ คี ุณสมบัตทิ ด่ี กี ว่าหรือเทียบเท่าเครือ่ งลูกข่ายก็ได้
Client-Based Architectures
 ตัวอย่างการใช้งานรูปแบบ Client-Based ได้แก่ การใช้โปรแกรมประมวลผลคา
(Word Processor) เช่น Microsoft Word พิมพ์งานในเครือ่ งผูใ้ ช้ และจัดเก็บ
ข้อมูลไว้บนเครือ่ ง Server
ั หาของรูปแบบ Client-Based คือ จะมีการจัดส่งข้อมูลผ่านระหว่าง client และ
 ปญ
server จานวนมาก จนเกิดการ overload เพราะต้องส่งทัง้ ข้อมูล และคาสังการ
่
ประมวลผลไปยังเครือ่ ง server
Client-Server Architectures
 ปจั จุบน
ั มีการเชื่อมต่อในรูปแบบนี้มากทีส่ ดุ
 การทางานของเครือ่ ง Client และเครือ่ ง Server จะมีความสมดุลกัน คือแบ่งการ
ประมวลผลระหว่างเครือ่ ง Client กับเครือ่ ง Server
 แบ่งส่วนการจัดเก็บข้อมูล (data storage) และการประมวลผล (data access) ไป
ยังเครือ่ ง server
 เช่น การทางานผ่าน Web ผูใ้ ช้จะส่งข้อมูลจากเครือ่ งผูใ้ ช้และไปประมวลผลที่
web server และ web server จะส่งค่ากลับมาแสดงผลที่ browser
Client-Server Architectures
 การทางานแบบ Client-Server จะแยกกันทางานระหว่าง Client และ Server
ดังนัน้ จังสามารถใช้ผลิตภัณฑ์จากผูผ้ ลิตคนละรายได้
 แต่ในการทางาน จะต้องใช้โปรแกรมมิดเดิลแวร์ (Middleware) ช่วยประสาน
Client-Server Architectures
 รูปแบบการทางานของโปรแกรมมิดเดิลแวร์ (Middleware)
Server
Middleware
Client
Client-Server Architectures
 หน้าทีข่ อง Middleware
1.
2.
ประสานการทางานของ software ทีผ่ ผู้ ลิตต่างกันให้สามารถทางานร่วมกันได้
(เช่น การแปลภาษาการทางานระหว่างระบบปฏิบตั กิ ารของเครือ่ ง PC กับเครือ่ ง
Mainframe)
ส่งข้อมูลจากเครือ่ ง Client ให้ไปยังเครือ่ ง Server อย่างถูกต้อง โดยพิจารณาว่า
จะจัดส่งไปยังเครือ่ ง Server ทีม่ ี Application ในการประมวลผลทีถ่ ูกต้อง เช่น
เมือ่ มีการเปลีย่ นเครือ่ ง Server โปรแกรม Middleware ต้องทาหน้าทีใ่ นการส่ง
ข้อมูลทีต่ อ้ งการประมวลผลไปยังเครือ่ ง Server ทีถ่ ูกต้อง
Client-Server Architectures
 ตัวอย่างมาตรฐานของ Middleware
1.
DCE – Distributed Computing Environment
2.
CORBA – Common Object Request Broker Architecture
3.
ODBC – Open Database Connectivity
Peer-to-Peer Architectures
 เป็ นรูปแบบทีม
่ นี าน แต่กลับมาได้รบั ความนิยมอีกครัง้ ราวๆปี
 โปรแกรมทีเ่ ป็ นทีน
่ ิยมในช่วงดังกล่าวได้แก่
 เครือ่ งคอมพิวเตอร์หนึ่งสามารถเป็ นได้ทงั ้
2000
Napster
Server และ Client โดยผูใ้ ช้จะเชื่อมต่อ
ถึงกันโดยตรง และค้นหาไฟล์ทต่ี อ้ งการจากเครือ่ งทีเ่ ชื่อมต่อกันอยู่
Peer-to-Peer Architectures
Peer-to-Peer Architectures
 เครือ่ งคอมพิวเตอร์แต่ละเครือ่ งจะทาหน้าทีค
่ รบทัง้ 4 ฟงั ก์ชนั คือ Presentation
Logic, Application Logic, Data Access Logic และ Data Storage Logic
 ข้อดีคอื ทุกเครือ่ งสามารถติดตัง้ (install) โปรแกรมได้ ดังนัน้ โปรแกรมหรือ
Application ต่างๆ จะกระจายอยูท่ วไป
ั ่ ผูใ้ ช้สามารถเลือกเชื่อมต่อจากเครือ่ งที่
ตนเองสะดวกทีส่ ดุ
 แต่จะเกิดความยุง่ ยากในการค้นหาไฟล์ตอ้ งการ และไม่มรี ะบบรักษาความ
ปลอดภัย (security)
 ไม่นิยมใช้ในองค์กร แต่นาหลักการของ Peer-tot-Peer มาประยุกต์ใช้ เช่น Grid
Computing
Peer-to-Peer Architectures
สถาปั ตยกรรมของโปรแกรมคอมพิวเตอร์
(Application Architectures)
 สถาปตั ยกรรมเครือข่าย 4 แบบ ได้แก่
 Host-Based
Architectures
 Client-Based Architectures
 Client-Server Architectures
 Peer-to-Peer Architectures
แนวทางการเลือกใช้ สถาปั ตยกรรมที่เหมาะสม
 เพือ่ ความเหมาะสมในการใช้งาน และคุม
้ ค่ากับการลงทุนขององค์กร
 ในปจั จุบน
ั มีการใช้งานในรูปแบบของ Client-Server มากทีส่ ุด
 เนื่องจากมีความเสถียร ปลอดภัย
 สามารถเพิม
่ /ลดขนาดและศักยภาพของ
Server ตามความเหมาะสมของงานได้
 สามารถทางานในรูปแบบ Multiple Server ช่วยกระจายการทางาน และใช้เป็ น Server
สารอง ได้
 ราคาถูก และมี Application ทีร่ องรับการทางานได้มาก
 ปจั จุบน
ั ได้มกี ารพัฒนาไปสูเ่ ทคโนโลยี Cloud Computing
 ตัวอย่างการใช้งาน Cloud Computing ได้แก่ การบริการของ gmail โดย บ.Google
สามารถให้บริการ e-mail แก่องค์กร โดยเก็บค่าใช้จา่ ยในการดูแลระบบ โดยทีอ่ งค์กร
ดังกล่าวไม่ตอ้ งลงทุนด้าน hardware และ software
แนวทางการเลือกใช้ สถาปั ตยกรรมที่เหมาะสม
 รูปแบบของ Client-Server
 สามารถจาลองเครือ่ ง server เสมือน (Server Virtualization) เช่น จาลองให้เครือ่ ง
คอมพิวเตอร์เครือ่ งเดียว สามารถเป็ นเครือ่ งให้บริการ (server) ทัง้ Web Servers,
Application Servers, Database Servers
 ช่วยลดจานวนเครือ่ งคอมพิวเตอร์ทต
่ี อ้ งใช้ ทาให้ลดพลังงาน ลดแรงงาน และค่าใช้จา่ ยใน
การดูแล
 การทา Server Virtualization จึงเป็ นแนวทางหนึ่งในการเข้าสูร่ ป
ู แบบของ Green
Computing
 การทา Server Virtualization จะต้องใช้โปรแกรมเพือ่ จาลองเครือ่ งคอมพิวเตอร์
(Physical Computer >> Logical Computer) เช่น โปรแกรม Vmware
 มักจาลอง Server ให้ทางานไม่เกิน 3 ด้าน ทัง้ นี้ตอ้ งคานึงถึงจานวนข้อมูล (traffic) ทีต
่ อ้ ง
รับส่งในการใช้งานด้วย
World Wide Web
 เริม
่ พัฒนาขึน้ เมือ่ ปี
1989 โดย Sir Tim Berners-Lee ในห้องปฏิบตั กิ ารของ
CERN (European Particle Physics Laboratory)
 ใช้หลักการของ Hypertext ในการเชื่อมต่อข้อมูล (Link ถึงกันด้วยตัวอักษร)
 จากนัน้ CERN ได้พฒ
ั นาโปรแกรมดูเว็บ (Browser) ใช้งานในยุโรปและอเมริกา
 ขณะนัน้ เริม
่ มี Web Servers ทัวโลกราวๆ
่
200 เครือ่ ง
หลักการทางานของเว็บ
 ใช้หลักการทางานของ Client-Server
 เครือ่ งให้บริการคือ Web Server ส่วนเครือ่ งของผูใ้ ช้สามารถใช้ application ใดๆ
ในการเปิดอ่านเว็บก็ได้ (เช่น Internet Explorer, Chrome , Firefox)
 ข้อมูลของเว็บไซต์ต่างๆ จัดเก็บแยกคนละ Web Server ผูใ้ ช้สามารถเข้าถึงข้อมูล
ผ่านการพิมพ์ URL (Uniform Resource Locator) จากนัน้ จึงมีกระบวนการใน
การไปดึงข้อมูลจาก Web Server ทีถ่ ูกต้องได้
 การติดต่อระหว่าง browser และ Web Server ต้องมีมาตรฐานทีก
่ าหนดไว้
เรียกว่า protocol (โปรโทคอล)
 protocol ทีใ่ ช้ตด
ิ ต่อระหว่าง Web Browser กับ Web Server คือ HTTP –
(Hypertext Transfer Protocol)
หลักการทางานของเว็บ
หลักการทางานของเว็บ
 การทางานของ HTTP Request และ HTTP Response
หลักการทางานของเว็บ
 การทางานของ HTTP Request
หลักการทางานของเว็บ
 การทางานของ HTTP Response
Electronic Mail (e-Mail)
 เป็ นการส่งข้อมูลในลักษณะ packet
 ใช้โปรโทคอล SMTP (Simple Mail Transfer Protocol) ในการส่ง
 ใช้โปรโทคอล POP (Post Office Protocol) หรือ IMAP (Internet Message
Access Protocol) ในการสือ่ สารระหว่าง Mail Client กับ Mail Server
 POP >> จะสามารถเก็บข้อมูลไว้ในเครือ่ งผูใ้ ช้ และลบข้อมูลจาก server ได้
 IMAP >> ผูใ้ ช้อ่าน e-mail บน Mail Server แต่สามารถอ่านได้จากอุปกรณ์ท่ี
หลากหลาย และมีแหล่งทีเ่ ก็บสารอง e-mail ตลอด
Electronic Mail (e-Mail)
Electronic Mail (e-Mail)
Electronic Mail (e-Mail)
 การแนบไฟล์ไปกับ e-Mail จะต้องทาการแปลงไม่ให้อยูใ่ นรูปแบบตัวอักษร
(nontext)
 ใช้มาตรฐาน Multipurpose Internet Mail Extension (MIME) ในการเข้ารหัส
เพือ่ ไปแนบกับ e-Mail
 โปรแกรม MIME จะทาการแปลงไฟล์ให้เป็ นรหัส (encode) และใส่ขอ้ มูลทีจ่ าเป็ น
เช่น ชื่อและประเภทของไฟล์
โปรแกรมอื่นๆ
 Telnet
 เป็ นการเชือ่ มต่อโดยตรงระหว่างคอมพิวเตอร์
ั ่ ่ง
 ผูใ้ ช้จะใช้ username และ password ในการเข้าถึงเครือ่ งคอมพิวเตอร์อกี ฝงหนึ
 เพือ่ ทาการตัง้ ค่าหรือช่วยบริการเครือ่ งคอมพิวเตอร์ในระยะไกลได้
 Instant Messaging
 มีหลักการทางานเช่นเดียวกับเว็บ
 โดยส่งข้อมูลไปยัง IM Server (Instant Messaging Server) แล้วจึงส่งต่อไปยังผูร้ บ
ั
โปรแกรมอื่นๆ
 Videoconferencing
 จัดส่งทัง้ Video และ Audio
 ต้องใช้ Video Conference Server เป็ นเครือ่ งในการประมวลผล
 ใช้โปรโทคอล H.320 และ H.323
กรณีศึกษา
 กรณีท่ี 1 Deals-R-Us Brokers
Fred Jones เป็ นผูบ้ ริหารของบริษทั Deals-R-Us Brokers (DRUB) มาพบนักศึกษาเพือ่ ขอคาปรึกษา
โดยบริษทั DRUB เป็ นบริษทั broker ขนาดเล็ก ซือ้ ขายหุน้ ผ่านเครือข่ายอินเทอร์เน็ต ซึง่ ในตอนนี้ใช้การ
ติดต่อทางโทรศัพท์และโทรสาร (fax) แผนกสารสนเทศของ Fred ได้นาเสนอว่าจะพัฒนาโปรแกรมเพือ่ ให้
ลูกค้าได้ซอ้ื ขายหุน้ ผ่านอินเทอร์เน็ต โดยนาเสนอทางเลือกให้ Fred 2 ทาง ทางแรกคือ ให้ลูกค้าติดตัง้
โปรแกรมไว้ในเครือ่ งของตน และเลือกข้อมูลจาก Server ไปประมวลผล ทางทีส่ องคือ ติดตัง้ โปรแกรมไว้
บน Server และให้ลกู ค้าเข้าถึงข้อมูลทีต่ อ้ งการโดยผ่าน browser เหมือนเปิดใช้งานเว็บ
ก. อธิบายสถาปตั ยกรรมของการประมวลผลทัง้ สองแบบพอสังเขป
ข. เปรียบเทียบและให้ขอ้ เสนอแนะแก่ Fred เพือ่ ให้ Fred ตัดสินใจเลือกติดตัง้ ระบบ
กรณีศึกษา
 กรณีท่ี 2 Ramirez y Flores
Alberto Bamboa เป็ นผูบ้ ริหารของบริษทั ให้คาปรึกษาด้านซอฟต์แวร์ในอาร์เจนตินา โดยให้
คาปรึกษาแก่ลกู ค้าผ่านทาง e-Mail ต่อมาเมือ่ มีลกู ค้าเยอะขึน้ จึงได้ขยายการให้คาปรึกษาผ่านทาง
Instant Messenger จนปจั จุบนั เมือ่ มีลกู ค้ามากขึน้ Alberto จึงเริม่ มีแนวคิดในการนา Videoconference
มาใช้ แต่เนื่องจากบริษทั เคยใช้ IM เพียงตัวเดียวในการติดต่อลูกค้า ซึง่ ยุง่ ยากในการบริหารจัดการ และ
ผูบ้ ริหารของบริษทั ก็เกรงว่า หากนา Videoconference มาใช้ อาจจะยุง่ ยากเหมือนใช้ IM จึงมีขอ้ สงสัยว่า
ควรใช้ e-Mail แบบเดิมเพือ่ ให้งา่ ยต่อการจัดการ หรือปรับมาใช้ Videoconference
ให้นกั ศึกษาอภิปราย เพือ่ ให้คาตอบแก่ผบู้ ริหาร