310 likes | 461 Vues
A TCP Learning Environment http://tcp.dcs.st-andrews.ac.uk*. Kristoffer Getchell, Alan Miller, Colin Allison School of Computer Science University of St Andrews {kg, alan, colin}@dcs.st-andrews.ac.uk. * Site freely available for non-commercial use. Presentation Overview. What is TCP View
E N D
A TCP Learning Environmenthttp://tcp.dcs.st-andrews.ac.uk* Kristoffer Getchell, Alan Miller, Colin Allison School of Computer Science University of St Andrews {kg, alan, colin}@dcs.st-andrews.ac.uk * Site freely available for non-commercial use
Presentation Overview • What is TCP View • Why is it needed • Educational Content • Interactivity • Delivery • Conclusion & Evaluation • Questions?
What Is TCP View? • TCP View is a web delivered interactive learning resource • Allows users to interact with animations, visualisations and simulations of protocol behaviour • Can be used: • Independently by learners • As part of a tutorial/practical session by learner/demonstrators • During lectures by lecturers/learners
Why Is It Needed? • Aims to bridge the gap between theoretical and practical networking courses • Allows students to interact with theoretical material in a novel way • Provides users with an anytime-anywhere access learning resource • Tries to remove the traditional emphasis on dry, acronym filled lectures through the use of an alternative presentation medium
Educational Content • Split into 4 individual units: • Introduction • Historical development, protocol design goals, packet structures • Connection Management: • Connection setup & teardown, connection lifecycle, TCP Finite State Machine • Data Flow: • Congestion (and its avoidance!), transfer reliability, TCP Window evolution • Efficiency: • Visualisation of simulated protocol behaviour under a variety of (user selectable) conditions
Educational Content • Split into 4 individual units: • Introduction • Historical development, protocol design goals, packet structures • Connection Management: • Connection setup & teardown, connection lifecycle, TCP Finite State Machine • Data Flow: • Congestion (and its avoidance!), transfer reliability, TCP Window evolution • Efficiency: • Visualisation of simulated protocol behaviour under a variety of (user selectable) conditions
Educational Content • Split into 4 individual units: • Introduction • Historical development, protocol design goals, packet structures • Connection Management: • Connection setup & teardown, connection lifecycle, TCP Finite State Machine • Data Flow: • Congestion (and its avoidance!), transfer reliability, TCP Window evolution • Efficiency: • Visualisation of simulated protocol behaviour under a variety of (user selectable) conditions
Educational Content • Split into 4 individual units: • Introduction • Historical development, protocol design goals, packet structures • Connection Management: • Connection setup & teardown, connection lifecycle, TCP Finite State Machine • Data Flow: • Congestion (and its avoidance!), transfer reliability, TCP Window evolution • Efficiency: • Visualisation of simulated protocol behaviour under a variety of (user selectable) conditions
Educational Content • Split into 4 individual units: • Introduction • Historical development, protocol design goals, packet structures • Connection Management: • Connection setup & teardown, connection lifecycle, TCP Finite State Machine • Data Flow: • Congestion (and its avoidance!), transfer reliability, TCP Window evolution • Efficiency: • Visualisation of simulated protocol behaviour under a variety of (user selectable) conditions
Interactivity • Interactivity used to highlight various important characteristics: • Image Maps: allow user interaction with diagrams, graphs etc • Packet Flow Animations: used to explore the process of transferring data between hosts • Sequence State Animations: highlight event sequences – reinforce the ordering of events • Simulations: allow users to direct their own learning environment – experimenting with parameters and obtaining feedback through 2D and 3D interactive graphical representations
Interactivity • Interactivity used to highlight various important characteristics: • Image Maps: allow user interaction with diagrams, graphs etc • Packet Flow Animations: used to explore the process of transferring data between hosts • Sequence State Animations: highlight event sequences – reinforce the ordering of events • Simulations: allow users to direct their own learning environment – experimenting with parameters and obtaining feedback through 2D and 3D interactive graphical representations
Interactivity • Interactivity used to highlight various important characteristics: • Image Maps: allow user interaction with diagrams, graphs etc • Packet Flow Animations: used to explore the process of transferring data between hosts • Sequence State Animations: highlight event sequences – reinforce the ordering of events • Simulations: allow users to direct their own learning environment – experimenting with parameters and obtaining feedback through 2D and 3D interactive graphical representations
Interactivity • Interactivity used to highlight various important characteristics: • Image Maps: allow user interaction with diagrams, graphs etc • Packet Flow Animations: used to explore the process of transferring data between hosts • Sequence State Animations: highlight event sequences – reinforce the ordering of events • Simulations: allow users to direct their own learning environment – experimenting with parameters and obtaining feedback through 2D and 3D interactive graphical representations
Interactivity • Interactivity used to highlight various important characteristics: • Image Maps: allow user interaction with diagrams, graphs etc • Packet Flow Animations: used to explore the process of transferring data between hosts • Sequence State Animations: highlight event sequences – reinforce the ordering of events • Simulations: allow users to direct their own learning environment – experimenting with parameters and obtaining feedback through 2D and 3D interactive graphical representations
Delivery • Server • Standard Apache 2 Web Server with Server Side Includes enabled • Perl scripts used to power simulations • gnuplot/Java Applets used to produce visualisations • Client • Windows/Linux/MacOS X supported (tested!) • Standard Web Browser (IE, Firefox, Mozilla etc) • Java Runtime + Macromedia Flash Player
Reference & Further Study • To aid further independent study a number of external links are provided within the TCP View site: • RFC’s • Seminal Papers • Protocol Stack Implementations • Slides (including this set!)
Future Work • TCP View has targeted the main aspects of TCP, but other areas could be included: • Sliding Window Protocol • Congestion Control • Develop the hands-on approach further • TCP Virtual Experimentation Lab • Provide structured learning activities • IMS-LD packaging? • Use the TCP View lessons to develop further learning resources for other areas • WIFI, Routing, IP
Conclusion & Evaluation • Project has been used in lectures and as a “take home” resource as part of an undergraduate networking course • Limited User Testing and Evaluation has been conducted • Initial feedback has been positive, but further testing and evaluation is required (will be undertaken in the forthcoming academic year)
Acknowledgements • The Higher Education Academy works with universities and colleges, discipline groups, individual staff and organisations to help them deliver the best possible learning experience for all students. • The main purpose of Saltire Filta grants is to encourage the development of new patterns of learning and teaching, especially where the innovation or development requires pump-priming finance that cannot be provided from normal departmental resources.
Questions? Site available at*: http://tcp.dcs.st-andrews.ac.uk Comments/feedback greatly welcomed {kg, alan, colin}@dcs.st-andrews.ac.uk * Site freely available for non-commercial use