\setcounter{numTAs}{1} \setcounter{totalSections}{2} \def\secNum{{"001","002",""}} \def\tenSchFileName{{"ECE4470_tentative_schedule_Kulkarni_Xie.pdf","ECE4470_tentative_schedule_Kulkarni_Xie.pdf",""}} \def\classTime{{"MW 1:55 pm to 03:10 pm","MW 3:20 pm to 4:35 pm",""}} \def\classRm{{"Tol 310C","Tol 212",""}} \def\classLive{{"https://villanova.zoom.us/j/92171994526","https://villanova.zoom.us/j/95914462191",""}} \def\classInstructor{{"Dr. Sarvesh Kulkarni","Dr. Sarada P. Gochhayat",""}} \def\classInstrContact{{"https://www1.villanova.edu/university/engineering/academic-programs/departments/electrical-computer/directory/biodetail.html?mail=sarvesh.kulkarni@villanova.edu&xsl=bio_long","https://www1.villanova.edu/university/engineering/academic-programs/departments/electrical-computer/directory/biodetail.html?mail=sarada.gochhayat@villanova.edu&xsl=bio_long",""}} \def\classInstrOffHrs{{"MW 11:00 am - 12:30 pm","Tue, Thu, Fri 12:00 pm - 1:30 pm",""}} \def\classInstrLive{{"https://villanova.zoom.us/j/94843134082","",""}} \def\labTime{{"Tue 5:00 pm to 6:40 pm","Tue 1:30 pm to 3:10 pm",""}} \def\labRm{{"Vasey 204","Tol 305",""}} \def\labLive{{"https://villanova.zoom.us/j/5501866845","https://villanova.zoom.us/j/5501866845",""}} \def\labInstructor{{"Dr. Sarvesh Kulkarni","Dr. Sarada P. Gochhayat",""}} \def\labInstrContact{{"https://www1.villanova.edu/university/engineering/academic-programs/departments/electrical-computer/directory/biodetail.html?mail=sarvesh.kulkarni@villanova.edu&xsl=bio_long","https://www1.villanova.edu/university/engineering/academic-programs/departments/electrical-computer/directory/biodetail.html?mail=sarada.gochhayat@villanova.edu&xsl=bio_long",""}} \def\labInstrOffHrs{{"MW 11:00 am - 12:30 pm","Tue, Thu, Fri 12:00 pm - 1:30 pm",""}} \def\labInstrLive{{"https://villanova.zoom.us/j/94843134082","https://villanova.zoom.us/j/94843134082",""}} \def\TA{{{"Owen Saad",""},{"Owen Saad",""},{""}}} \def\TAEmail{{{"osaad@villanova.edu",""},{"osaad@villanova.edu",""},{""}}} \def\TAOffHrs{{{"Mon, Wed 12:00 pm - 1:30 pm",""},{"Mon, Wed 12:00 pm - 1:30 pm",""},{""}}} \def\TARoom{{{"Tol 425",""},{"Tol 425",""},{""}}} \newcommand\semester{Spring 2023} \newcommand\rsemester{202330} \newcommand\courseNum{ECE 4470} \newcommand\courseName{Computer Networks} \newcommand\courseCoordinator{Dr. Sarvesh Kulkarni} \newcommand\credits{4} \newcommand\contactHrs{5} \newcommand\lecture{1} \newcommand\lab{1} \newcommand\undergradCourse{1} \newcommand\isFreshmanCourse{0} \newcommand\isCustomElecPolicy{0} \newcommand\isClassLive{0} \newcommand\isLabLive{0} \newcommand\meetingMiscExists{0} \newcommand\isClassInstrLive{0} \newcommand\isLabInstrLive{0} \newcommand\instrMiscExists{1} \newcommand\hasTARoom{1} \newcommand\meetingDesc{(Two 75-minute lectures, one 100-minute practicum weekly)} \newcommand\meetingMisc{} \newcommand\instructorMisc{} \newcommand\textBookExists{1} \newcommand\textBookReqd{1} \newcommand\textBookMiscExists{1} \newcommand\referencesExist{0} \newcommand\txtBkAuthExists{1} \newcommand\txtBkPublExists{1} \newcommand\txtBkYrExists{1} \newcommand\txtBkISBNExists{1} \newcommand\textBookTitle{Computer Networks - A Systems Approach, 5th ed.} \newcommand\textBookAuth{L. L. Peterson and B. S. Davie} \newcommand\textBookPub{Morgan Kaufmann} \newcommand\textBookYr{2012} \newcommand\textBookISBN{978-0-12-385059-1} \newcommand\supplMaterials{Class slides and notes (will be posted on Blackboard)} \newcommand\refPapers{References go here, if specified} \newcommand\textBookMisc{Thanks to Villanova's \href{https://library.villanova.edu/amp/index.html}{\textcolor{blue}{Affordable Materials Project (AMP)}}, get the textbook \href{https://go.oreilly.com/villanova-univ/https://learning.oreilly.com/library/view/computer-networks-5th/9780123850591}{\textcolor{blue}{FREE HERE}}. This link is also posted on the Blackboard page for the course. The O'Reilly Media mobile app (iOS, Android \& Amazon Fire) allows you to read the textbook online/offline and syncs your progress and highlighted material across devices. Printed copies are not free.} \newcommand\catalogDesc{ISO/OSI, TCP/IP reference models; data transmission, encoding, framing, error detection, stop-and-wait, sliding windows; CSMA/CD, Ethernet; bridges, spanning tree protocol; connectionless, connection-oriented and source routing, IP addressing, forwarding, VPNs; switching fabrics; ARP, DHCP, DV, OSPF, BGP, DNS.} \newcommand\preReqs{ECE 1620 or CSC 2405} \newcommand\coReqs{None} \newcommand\coreRequirement{Required for B.S. Computer Engineering} \newcommand\courseExpectation{At the conclusion of this course, students are expected to: Acquire a broad understanding of the principles of architectural design and operation of contemporary, wired, packet-switched computer networks; Be acquainted with the hardware, software and design tradeoffs in current-day networks; Understand how network protocols at different levels inter-operate with each other and their role in a much larger world-wide system; Be acquainted with the social, economic and cultural impacts of this world-wide system; Learn the use of common network analysis tools; Implement a simple but fully working protocol on Ubuntu Linux in C (or C++) using the gcc (or g++) open source compiler.} \newcommand\ABETOutOne{1} \newcommand\ABETOutTwo{0} \newcommand\ABETOutThree{1} \newcommand\ABETOutFour{1} \newcommand\ABETOutFive{0} \newcommand\ABETOutSix{1} \newcommand\ABETOutSeven{0} \newcommand\covTopics{\item The ISO-OSI and the TCP/IP reference models for communication, functions of individual layers, data movement between layers, protocols and their relationship to layers \item PHY data transmission: wired media and wireless media; basics of modulation; NRZ, NRZI, Manchester and 4B/5B encoding; the Nyquist and Shannon-Hartley theorems (without proof) and their application \item Data Link layer: framing; error detection using 2-D parity, checksum and Cyclic Redundancy Check (CRC); error recovery - stop-and-wait \& sliding window protocols; CSMA/CD and case study of Ethernet; Learning bridges and Spanning Tree Protocol (STP) \item Network layer: virtual circuits, datagrams, source routing; intra-domain routing algorithms - Distance Vector (DV), Open Shortest Path First (OSPF); inter-domain routing Border Gateway Protocol (BGP); IP addressing with classes, Classless Inter-Domain Routing (CIDR); IP subnets, masks, route lookups; switching fabrics and network processors \item Protocols - ARP, DHCP; Private communication - Virtual Private Networks (VPNs) \item Name resolution - Domain Name Service (DNS) architecture, records, and usage \item Laboratory topic 1: Design/implement simple file transfer protocol over UDP by programming in C or C++ using gcc/g++ compiler on Ubuntu Linux \item Laboratory topic 2: Network analysis tools - ping, route, traceroute, ss and wireshark } \newcommand\isScheduleExternal{0} \newcommand\isScheduleCommon{1} \newcommand\scheduleRows{18} \newcommand\scheduleCols{3} \newcommand\scheduleHeight{1} \newcommand\schedule{\begin{table}[h!] \centering \caption*{Tentative Schedule for \textbf{All Sections}} \vspace{0.05in} {\renewcommand{\arraystretch}{1.5} \small \begin{tabularx}{\linewidth}{c|c|X} \toprule \large \textbf{Week \#} & \large \textbf{Dates} & \large \textbf{Topics of Study}\\ \midrule \midrule 1 & 1/18 - 1/20 & Introduction; common terms; network characteristics \& general classification - LAN, MAN, WAN; \textbf{1/11: no lab}\\ 2 & 1/23 - 1/27 & Wired \& wireless connection characteristics; network topologies; circuit and packet-switching; error classification; services and functions of communication hardware/software; layers, protocols \& services; ISO-OSI reference model\\ 3 & 1/30 - 2/3 & TCP/IP reference model; model differences; network evolution with illustrations; performance measurements and metrics; delay-bandwidth product and its significance\\ 4 & 2/6 - 2/10 & \textcolor{red}{Mon, 2/6: Quiz 1}; \textit{ping} tool; PHY layer: transmission media \& their characteristics\\ 5 & 2/13 - 2/17 & Information theory: Nyquist and Shanon-Hartley theorems with examples; data transmission: modulation, encoding\\ 6 & 2/20 - 2/24 & \textcolor{red}{Mon, 2/20: Quiz 2}; DL layer: framing; error detection: parity, checksum, CRC\\ 7 & 2/27 - 3/3 & Open free-form discussion: ethical, societal, global and economic impacts; \textcolor{red}{Wed, 3/1: Midterm Exam}\\ 8 & 3/6 - 3/10 & \textbf{Spring break}\\ 9 & 3/13 - 3/17 & Error recovery with ARQ: stop-and-wait \& sliding window protocols\\ 10 & 3/20 - 3/24 & Ethernet, channel access using CSMA/CD; intro to switching/routing\\ 11 & 3/27 - 3/31 & \textcolor{red}{Mon, 3/27: Quiz 3}; ISO-OSI switching/routing: datagram, VC, source-based; learning bridges\\ 12 & 4/3 - 4/7 & Bridges contd: STP Protocol for breaking loops; Internet layer (IP): protocol, packet format, fragmentation / defragmentation, addressing (classes, public \& private) \textbf{4/\{6-10\} Easter break}\\ 13 & 4/10 - 4/14 & IP protocol details: packet forwarding, masks \& subnets, solved subnetting example, CIDR\\ 14 & 4/17 - 4/21 & \textcolor{red}{Mon, 4/17: Quiz 4}; Related protocols: ARP, DHCP, ICMP; IP tunnels \& VPNs\\ 15 & 4/24 - 4/28 & IP routing: DV, OSPF, BGP; DNS: architecture \& records\\ 16 & 5/1 - 5/3 & Switching fabrics; network processors; final review (if time permits); ~~~~~~~~~~~~~~\textbf{5/3: final class day; 5/5: reading day}\\ 17 & 5/8- 5/12 & \textcolor{red}{Final Exam: Thu, 5/11 from 11:30 am - 2:00 pm in TBD}\\ \bottomrule \end{tabularx} } \end{table}} \newcommand\gradingPolicy{\noindent {\bf Homework}: 10\% weightage\\ {\bf Laboratory}: 25\% weightage\\ {\bf Quizzes}: four quizzes, 20\% total weightage\\ {\bf Midterm Exam}: 20\% weightage\\ {\bf Final Exam}: 25\% weightage\\ \vspace{-0.05in} The final grading curve uses composite scores and will reflect a class average of \textit{B}. Regardless of the grading curve, a student with a compostite score of 90+ will be awarded an \textit{A} grade while a student with a composite score of less than 50 will be awarded an \textit{F} grade. \textit{In addition, in order to pass this course, a student's aggregate lab score (i.e. the sum of all laboratory assignment scores) must be at least 50\%.}} \newcommand\HWandLabPolicy{HW assignments and laboratory reports must be uploaded to \textbf{``Blackboard''} by the posted deadline. Late assignments/reports will be assessed a 10\% penalty per day, up to the cut-off date (usually three days later). After the cut-off date, assignments/reports WILL NOT be accepted. You may turn in incomplete work to receive partial credit. You may work in groups and discuss your general solution approaches with others. However, you may not show each other your written solutions or share the details of your work. Code sharing is forbidden. No laboratory sessions will be held for the first two weeks of the semester. Be sure to maintain a working Linux partition on your laptop with functional \textit{C} and \textit{C++} compilers (i.e. gcc \& g++). And do backup your work - your grade depends on it!} \newcommand\AttendancePolicy{A roll call will not be taken at the start of each class. However, you are expected to attend ALL classes unless officially excused. Since examination questions will be based on the material taught in class and the prescribed reading from the course textbook, missing classes will put you at a severe disadvantage. So, attend all classes, and be sure to take notes attentively.} \newcommand\ElectronicsPolicy{\textcolor{red}{Since you opted for a customize electronics policy, you should edit this part. Your policy should address your general stance on recording of class sessions and the circumstances under which recording will be allowed or prohibited. If you generally prohibit recording, yet allow recording of certain classes for some reason, then ypu should notify all students that those classes will be recorded. If recording is permitted as an ADA accommodation for a student, you obviously should not identify that student(s).)}}