Second Semester 2014 Data Communications and Network Programming

  • Slides: 30
Download presentation
Second Semester, 2014 Data Communications and Network Programming: Course Introduction Asst. Prof. Chaiporn Jaikaeo,

Second Semester, 2014 Data Communications and Network Programming: Course Introduction Asst. Prof. Chaiporn Jaikaeo, Ph. D. chaiporn. j@ku. ac. th http: //www. cpe. ku. ac. th/~cpj Computer Engineering Department Kasetsart University, Bangkok, Thailand Most materials in this presentation were prepared by Assoc. Prof. Anan Phoenphoem (http: //www. cpe. ku. ac. th/~anan) 1

Outline n n n Motivation Growth of Computer Networking Data Communication Networks Protocols and

Outline n n n Motivation Growth of Computer Networking Data Communication Networks Protocols and Standards Standard Organizations 2

Motivations n Efficient way to share resources n n n Cost – less expensive

Motivations n Efficient way to share resources n n n Cost – less expensive Accessibility – easier Efficient way to exchange information n Time – faster Size – bigger Correctness – accurate 3

Example - A Computer Network Laptop Workstation Media Links Server Printer Scanner 4

Example - A Computer Network Laptop Workstation Media Links Server Printer Scanner 4

Data Communication Hi, how are you? Hi, how are you? Computer 01010001 5

Data Communication Hi, how are you? Hi, how are you? Computer 01010001 5

Data Comm. Components 1 Message Hi How are you doing? 5 2 Protocol Sender

Data Comm. Components 1 Message Hi How are you doing? 5 2 Protocol Sender 3 4 Receiver Medium 6

Protocols and Standards n Protocol n A set of rules governing data communications n

Protocols and Standards n Protocol n A set of rules governing data communications n n Syntax: format of data block Semantics: meaning of each section Timing: speed and sequencing Standards n De facto (in practice) standards not approved but widely adopted n De jure (in law) standards approved by a standard organization, e. g. , ISO, IEEE 7

Protocols and Standards n n To communicate, two devices must follow the same set

Protocols and Standards n n To communicate, two devices must follow the same set of communication protocols E. g. , they must n n n be connected to the same medium understand each other's messages In other words, they comply with the same standard 8

Data Representation Standards n Numbers n n 2 ASCII, Unicode Images n n 150

Data Representation Standards n Numbers n n 2 ASCII, Unicode Images n n 150 Text n n 8/16/32 bit integers floating point 255 Bit patterns, Graphics formats JPG/GIF/etc Audio Samples of continuous signal Video Sequence of bitmap images 9

Connection Standards Company B Company A Network Interface Card (NIC) Company C Company D

Connection Standards Company B Company A Network Interface Card (NIC) Company C Company D 10

Internetworking n n n How to allow devices from different standards to communicate Gateways/routers

Internetworking n n n How to allow devices from different standards to communicate Gateways/routers – devices capable of communicating in several standards These become "network of networks" 11

The Internet n n The largest internetwork (network of networks) in the world Devices

The Internet n n The largest internetwork (network of networks) in the world Devices communicating with TCP/IP protocol suite at high level Stanford U. of Utah UC Santa Barbara UCLA 12

Internet Growth #computers attached to Internet 13

Internet Growth #computers attached to Internet 13

Recent and Future Trends n n The availability of high-quality teleconferencing systems Some social

Recent and Future Trends n n The availability of high-quality teleconferencing systems Some social networking applications such as n Facebook Twitter Google+ n Many others n n n The Internet of Things (Io. T) 14

Future of the Internet http: //www. computerworld. com/s/article/print/9191518/Final_IPv 4_addresses_to_be_issued_within_months_NRO_warns 15

Future of the Internet http: //www. computerworld. com/s/article/print/9191518/Final_IPv 4_addresses_to_be_issued_within_months_NRO_warns 15

Future of the Internet http: //www. computerworld. com/s/article/9207961/Update_ICANN_assigns_its_last_IPv 4_addresses 16

Future of the Internet http: //www. computerworld. com/s/article/9207961/Update_ICANN_assigns_its_last_IPv 4_addresses 16

Future of the Internet http: //www. zdnet. com/blog/networking/its-official-asias-just-run-out-of-ipv 4 -addresses/948 17

Future of the Internet http: //www. zdnet. com/blog/networking/its-official-asias-just-run-out-of-ipv 4 -addresses/948 17

Internet of Things http: //www. opinno. com/en/content/internet-things-0 18

Internet of Things http: //www. opinno. com/en/content/internet-things-0 18

Connected Living https: //devcentral. f 5. com/articles/security-sidebar-defending-the-internet-of-things 19

Connected Living https: //devcentral. f 5. com/articles/security-sidebar-defending-the-internet-of-things 19

Connected Living http: //www. jumpthecurve. net/wp-content/uploads/2014/03/ericssonthings 1. jpg 20

Connected Living http: //www. jumpthecurve. net/wp-content/uploads/2014/03/ericssonthings 1. jpg 20

Future of the Internet http: //www. itworld. com/networking/231929/usenix-google-deploys-ipv 6 -internal-network 21

Future of the Internet http: //www. itworld. com/networking/231929/usenix-google-deploys-ipv 6 -internal-network 21

What Will We Learn in this course n n n Data communication concepts Computer

What Will We Learn in this course n n n Data communication concepts Computer networking devices Internet protocol suite (TCP/IP) Capture and analyze network traffic of wellknown applications Network programming n n n Standalone socket applications Web-based applications Web services 22

Languages and Tools n Basic network tools n n Network traffic monitor n n

Languages and Tools n Basic network tools n n Network traffic monitor n n ping, traceroute (tracert on Windows) Wireshark Programming n Java (with Groovy shell) 23

Ping 24

Ping 24

Trace Route 25

Trace Route 25

Monitoring Network Traffic Sample results from Wireshark 26

Monitoring Network Traffic Sample results from Wireshark 26

Application Program Interface (API) n n Set of operation for application programmer Specify arguments

Application Program Interface (API) n n Set of operation for application programmer Specify arguments and semantics 27

Berkeley Socket API n API for developing applications that perform inter-process communication in C/C++

Berkeley Socket API n API for developing applications that perform inter-process communication in C/C++ n n Example functions n n n most commonly for communications across a computer network, especially UNIX listen – used by server to wait for contact from client connect – used by client to contact server send – used by either client or server to send data recv – used by either client or server to receive data Java, . NET, Python, etc. provide convenient wrappers around socket API n Easier to write than C/C++ 28

Web APIs (Web Services( n APIs defining set of request and response messages via

Web APIs (Web Services( n APIs defining set of request and response messages via web context (i. e. , HTTP) n n n usually in Extensible Markup Language (XML) or Java. Script Object Notation (JSON) format Examples n n n Facebook API Twitter API Various Google APIs 29

Summary n n n Motivations of computer networking Data Communication components Network application programming

Summary n n n Motivations of computer networking Data Communication components Network application programming and APIs 30