C++ training course description A hands on introduction to programming in the C++ language. The course concentrates on aspects that will be new to experienced C programmers and so is not suitable for those without C knowledge. What will you learn Write C++ programs Debug C++ programs. Examine existing code and determine its function. Use classes, function overloading, operator overloading, inheritance and virtual functions within C++ programs. C++ training course details Who will benefit: Programmers needing to write C++ code. Programmers needing to maintain C++ code. Prerequisites: C programming foundation. Duration 5 days C++ training course contents The origins of C++ C++ as a better C, C++ and Object Oriented Programming, encapsulation, polymorphism, inheritance. C++ standards. Getting started Simple C++ programs. Classes Basics, constructor and destructor functions, member and friend functions. Using objects. Default, copy and conversion constructors. A better C Arrays, pointers and references, new and delete. Improved safety with smart pointers, Resource Acquisition in Initialization (RAII). Functions in C++ Function overloading, default arguments, inline functions, Lambda functions. Templates Template classes and functions. Standard Library Containers, Iterators, algorithms, function objects. Operator overloading Basics, binary operators, the this pointer, relational operators, unary operators. Members versus friends. Inheritance Base class access control, protected members, multiple inheritance, virtual base classes. More I/O Manipulators, customising inserters, extractors. File I/O. Virtual functions Pointers to derived classes, run time polymorphism. Exception handling Throwing errors, trying code and catching errors.
Complete C# programming training course description This training course teaches developers the programming skills that are required for developers to create Windows applications using the C# language. Students review the basics of C# program structure, language syntax, and implementation details, and then consolidate their knowledge throughout the week as they build an application that incorporates several features of the .NET Framework. What will you learn Use the syntax and features of C#. Create and call methods, catch and handle exceptions, and describe the monitoring requirements of large-scale applications. Implement a typical desktop application. Create class, define and implement interfaces, and create and generic collections. Read and write data to/from files. Build a GUI using XAML. Complete C# programming training course details Who will benefit: Programmers wishing to learn C#. Prerequisites: Developers attending this course should already have gained some limited experience using C# to complete basic programming tasks. Duration 5 days Complete C# programming training course contents Review of C# Syntax Overview of Writing Applications using C#, Datatypes, Operators, and Expressions. C# Programming Language Constructs. Hands on Developing the Class Enrolment Application. Methods, exceptions and monitoring apps Creating and Invoking Methods. Creating Overloaded Methods and Using Optional and Output Parameters. Handling Exceptions. Monitoring Applications. Hands on Extending the Class Enrolment Application Functionality. Developing a graphical application Implementing Structs and Enums. Organizing Data into Collections. Handling Events. Hands on Writing the Grades Prototype Application. Classes and Type-safe collections Creating Classes. Defining and Implementing Interfaces. Implementing Type-safe Collections. Hands on Adding Data Validation and Type-safety to the Grades Application. Class hierarchy using Inheritance Class hierarchies. Extending .NET framework classes. Creating generic types. Hands on Refactoring common functionality into the User Class. Reading and writing local data Reading and Writing Files. Serializing and Deserializing Data. Performing I/O Using Streams. Hands on Generating the Grades Report. Accessing a Database Creating and using entity data models. Querying and updating data by using LINQ. Hands on Retrieving and modifying grade data. Accessing remote data Accessing data across the web and in the cloud. Hands on Modifying grade data in the Cloud. Designing the UI for a graphical applicatione Using XAML to design a User Interface. Binding controls to data. Styling a UI. Hands on Customizing Student Photographs and Styling the Application. Improving performance and responsiveness Implementing Multitasking by using tasks and Lambda Expressions. Performing operations asynchronously. Synchronizing concurrent data access. Hands on Improving the responsiveness and performance of the application. Integrating with unmanaged code Creating and using dynamic objects. Managing the Lifetime of objects and controlling unmanaged resources. Hands on Upgrading the grades report. Creating reusable types and assemblies Examining Object Metadata. Creating and Using Custom Attributes. Generating Managed Code. Versioning, Signing and Deploying Assemblies. Hands on Specifying the Data to Include in the Grades Report. Encrypting and Decrypting Data Implementing Symmetric Encryption. Implementing Asymmetric Encryption. Hands on Encrypting and Decrypting Grades Reports.
Complete Python training course description Python is an agile, robust, expressive, fully objectoriented, extensible, and scalable programming language. It combines the power of compiled languages with the simplicity and rapid development of scripting languages. This course covers Python from the very basics of 'hello world!' through to object oriented programming and advanced topics such as multi threading. Hands on follows all the major sections in order to reinforce the theory. What will you learn Read Python programs. Write Python programs. Debug Python programs. Use Python's objects and memory model as well as its OOP features. Complete Python programming training course details Who will benefit: Anyone wishing to learn Python. Prerequisites: None. Duration 5 days Complete Python programming training course contents Welcome to Python: What is Python? Origins, features. Downloading and installing Python, Python manuals, comparing Python, other implementations. Getting started: Program output, the print statement, "hello world!", Program input, raw_input(), comments, operators, variables and assignment, numbers, strings, lists and tuples, dictionaries, indentation, if statement, while Loop, for loop. range(), list comprehensions. Files, open() and file() built-in functions. Errors and exceptions. Functions, Classes, Modules, useful functions. Python basics: Statements and syntax, variable assignment, identifiers, basic style guidelines, memory management, First Python programs, Related modules/developer tools. Python Objects: Other built-in types, Internal Types, Standard type operators, Standard type built-in functions, Categorizing standard types, Unsupported types. Numbers: Integers, Double precision floating point numbers, Complex numbers, Operators, Built-in and factory functions, Other numeric types. Sequences: strings, lists, and tuples: Sequences, Strings, Strings and operators, String-only operators, Built-in functions, String built-in methods, Special features of strings, Unicode, Summary of string highlights, Lists, Operators, Built-in functions, List type built-in methods, Special features of lists, Tuples, Tuple operators and built-in functions, Tuples special features, Copying Python objects and shallow and deep copies. Mapping and set types: Mapping Type: dictionaries and operators, Mapping type built-in and factory functions, Mapping type built-in methods, Dictionary keys, Set types, Set type operators, Built-in functions, Set type built-in methods. Conditionals and loops: If, else and elif statements, Conditional expressions, while, for, break, continue and pass statements, else statement . . . take two, Iterators and iter(), List comprehensions, Generator expressions. Files and input/output: File objects, File built-in functions [open() and file()], File built-in methods and attributes, Standard files, Command-line arguments, File system, File execution, Persistent storage modules. Errors and exceptions: What are exceptions? Detecting and handling exceptions, Context management, Exceptions as strings, Raising exceptions, Assertions, Standard exceptions, Creating Exceptions, Why exceptions, Exceptions and the sys module. Functions: Calling, creating and passing functions, formal arguments, variable-length arguments, functional programming, Variable scope, recursion, generators. Modules: Modules and files, Namespaces, Importing modules, Module import features, Module built-in functions, Packages, Other features of modules. Object-Oriented Programming (OOP): Classes, Class attributes, Instances, Instance attributes, Binding and method invocation, Static methods and class methods, Composition, Sub-classing and derivation, Inheritance, Built-in functions for classes, and other objects, Customizing classes with special methods, Privacy, Delegation, Advanced features of new-style classes (Python 2.2+), Related modules and documentation. Execution environment: Callable and code Objects, Executable object statements and built-in functions, Executing other programs. 'Restricted' and 'Terminating' execution, operating system interface. Regular expressions: Special symbols and characters, REs and Python, Regular expressions example. Network programming: Sockets: communication endpoints, Network programming in Python, SocketServer module, Twisted framework introduction. Internet client programming: What are internet clients? Transferring files, Network news, E-mail. Multithreaded Programming: Threads and processes Python, threads, and the global interpreter lock, The thread and threading Modules. GUI programming: Tkinter and Python programming, Tkinter Examples, Brief tour of other GUIs. Web programming: Web surfing with Python: creating simple web clients, Advanced Web clients, CGI: helping web servers process client data, Building CGI applications, Using Unicode with CGI, Advanced CGI, Web (HTTP) Servers. Database programming: Python database application programmer's interface (DB-API), ORMs. Miscellaneous Extending Python by writing extensions, Web Services, programming MS Office with Win32 COM, Python and Java programming with Jython.
Complete VBA programming training course description This course helps you extend the capabilities of the entire Office suite using Visual Basic for Applications (VBA). Even if you have no programming experience, you'll be automating routine computing processes quickly using the simple, yet powerful VBA programming language. We start at the beginning to get you acquainted with VBA so you can start recording macros right away. You'll then build upon that foundation to utilize the full capabilities of the language in Word, Excel, Outlook, and PowerPoint. What will you learn Record, write and run macros. Work with VBA Editor. Use the huge library of built-in functions. Create simple dialog boxes and complex forms. Customize Word, Excel, PowerPoint, Outlook, and Access. Program the Office 2016 ribbon. Complete VBA programming training course details Who will benefit: Anyone looking to extend the capabilities of the entire Office suite using VBA. Prerequisites: None. Duration 5 days Complete VBA programming training course contents Macros and getting started in VBA VBA syntax, variables, constants, and enumerations, array variables, finding objects, methods, and properties. Working with VBA 1 VBA syntax, variables, constants, and enumerations, array variables, finding objects, methods, and properties. Decisions, loops and functions Built-in functions, creating your own functions, making decisions in your code, using loops to repeat actions. Using message boxes, input boxes, and dialog boxes Getting user input with message boxes and input boxes, creating simple custom dialog boxes, creating complex forms. Creating effective code Building modular code and using classes, debugging your code and handling errors, building well-behaved code, exploring VBA's security features. Programming the Office applications The Word object model and key objects, working with widely used objects in Word, the Excel object model and key objects, working with widely used objects in Excel, the PowerPoint object, model and key objects, working with shapes and running slide shows, the Outlook object model and key objects, working with events in Outlook, the Access object model and key objects, manipulating the data in an Access database via VBA, accessing one application from another application, programming the Office 2016 ribbon.
Complete C programming training course description A hands-on introduction to programming in the ANSI C programming language. The course initially moves at a fast pace in order to spend as much time as possible on the subject of pointers - the area which cause the most bugs in C programs. What will you learn Write ANSI C programs Use the C libraries Debug C programs Examine existing code and determine its function. Complete C programming training course details Who will benefit: Programmers wishing to learn C. Programmers wishing to learn C++ or Java. Prerequisites: None, although experience in another high level language would be useful. Duration 5 days Complete C programming training course contents Getting started The compilation process, comments, main(), statement blocks, printf(). C data types and operators char, int, float and double, qualifiers, arithmetic and assignment operators, precedence, Associativity. Basic I/O C libraries, stdin and stdout, getchar(), putchar(), printf() formatting. Flow control if else, dangling elses, else if, while and for loops. switch statements, the null statement, break, continue and gotos. Functions Function calls, arguments and return types, function declarations (prototypes), function definitions, scope of variables. The preprocessor Preprocessor actions, macros, #include. Libraries and their relationship with header files. Conditional compilation. More data types and operators Logical, bitwise and other operators, type conversion, casting, typedefs and access modifiers. Arrays Declaring and handling arrays, common gotchas, multidimensional arrays. Pointers What are pointers? Why they are so important, declaring and using pointers,The three uses of the *,pointer example - scanf, pointers as arguments. More pointers Golden rules of pointers and arrays, pointers to arrays, pointer arithmetic, arrays of pointers, multiple indirection. Character/string manipulation Arrays of characters, string definition, working with strings, String library. Program arguments argc and argv, example uses,char *argv[] versus char ** argv. Program structure and storage classes Globals (externals), multi source programs, the look of a C program. Structures Declaration, the . and - operators, unions and bitfields. Library functions File handling, fopen and fclose, reading from and writing to files, fseek().calloc() and malloc()
Java training course description A comprehensive introduction of the Java language and environment. It is important to note that the course will assume that the delegates are already familiar with the C language as this enables more advanced features of the Java language to be covered in the course. The course will also give an overview of areas related to programming in Java. What will you learn Describe the Java architecture. Write Java applets and applications. Debug Java programs. Examine existing code and determine its function. Use multimedia extensions, the awt, multithreading, exceptions within Java Java training course details Who will benefit: Those wishing to program in Java. Prerequisites: Complete C programming Duration 5 days Java training course contents Review of UNIX fundamentals What is Java? What Java is, history of Java, reasons for success. The Java Virtual Machine, Bytecodes, getting up and running with Java, Java resources. Simple Java applications. C features in Java Java data structures, Java flow control, differences from C, arrays, strings and packages. OO features in Java Java classes and objects, inheritance, overloading, packages. Differences from C++. Java applets Applications vs. applets, HTML, the applet tag, applet methods, life cycle, testing and debugging. Multimedia applets Images, sounds, fonts, colours and animation. Java products The JDK in detail, other development environments. Javabeans and JDBC overviews. Abstract Window Toolkit JFC and Swing versus AWT. Event handling (JDK 1.1), GUIs, panels, buttons, lists, scrollbars, text areas, frames⦠Exception handling and multithreading Handling exceptions. Starting, pausing, stopping threads, producers, consumers, monitoring. More standard classes Java file I/O, Streams, The system class. The networking model, java.net classes. Security and Java Types of attack, the security manager, craplets, securing the network. Integrating legacy code with Java
IPTV training course description A current hot topic in recent years has been the provision of multimedia services over IP networks aka triple or quadruple play. This course investigates the characteristics of video transmission and then studies the impact on IP networks. What will you learn Use Wireshark to analyse and troubleshoot TV streams. Describe techniques, which can be used in IP to provide low uniform delay. Evaluate IPTV technologies. Design data networks, which will support IPTV. IPTV training course details Who will benefit: Anyone working with IPTV. Prerequisites: TCP/IP Foundation for engineers Intro to data communications & networking. Duration 3 days IPTV training course contents What is IPTV? What is IP? What is TV? Pixels, frames, colour, digital modulation, digital video broadcasting. SDTV, HDTV, 4K. IPTV architectures, Contribution, distribution, delivery. IPTV standards. Hands on Base IP connectivity, VLC. IPTV protocol stacks IP, TCP, UDP, RTP. IPv6. HTTP. Bandwidth requirements. Hands on IPTV bandwidth calculations. Video codecs What is a CODEC, pictures and audio, digitisation, sampling, quantisation, encoding, compressing. MPEG, bit rates, resolution. I, B, P frames, GOP. MPEG 2, MPEG 4, H.264, H.265, VP9, AV1. Hands on Analysing MPEG frames. IP issues Quality vs. bandwidth. Bandwidth, delay, latency, jitter, signalling. Routers. Hands on Analysing jitter and other performance issues. IPTV performance and QoS IP DSCP field, queuing strategies; FIFO, WFQ, custom, priority, RED. Differentiated services, Diffserv. 802.1Q. Traffic shaping. QoE. Hands on best effort versus prioritisation. UDP versus TCP Reliable, unreliable, connection oriented, connectionless. Broadcasts, multicasts and unicasts. TCP flow control, TCP and performance. Hands on TCP window sizes. RTP RTP, ports, mixers, translators, RTCP, SMPTE, FEC. Hands on RTP analysis with Wireshark. Multicasting Multicasting compared to unicasting and broadcasting, when to use and when not to use multicasting. IGMP, PIM-SM, SSM. MLD. Hands on Analysing multicast streams. OTT TV HTTP, HTTPS, Chunked HTTP. Adaptive streaming. HTML5. DASH vs HLS. Hands on Analysing HTTP streams. Security Firewalls, TLS, DRM, watermarking. Encryption. Geolocation. VPNs. IPTV architecture and other protocols Content providers, Service providers, delivery networks, home networks. Caching, Service discovery. RTSP. SAP, SDP. DHCP, DNS, NTP Hands on Fixing the network.
Definitive Ethernet switching course description A hands on comprehensive look at Ethernet switches with extensive coverage of VLANs. The course focuses on the technology and not any one manufacturers product enabling delegates to configure switches from any manufacturer. What will you learn Configure and troubleshoot switches using: Console port telnet HTTP TFTP Configure and troubleshoot switch features such as: Duplex/speed Port based MAC security Spanning Tree Link aggregation Tagged ports Configure and troubleshoot VLANs. Definitive Ethernet switching course details Who will benefit: Technical staff. Prerequisites: Intro to data communications & networking. Duration 3 days Definitive Ethernet switching course contents What is Ethernet? LANs, network cards and cables, CSMA/CD, Ethernet frames, Ethernet evolution, 802.3. Hands on: ping, Ethernet speeds, CSMA/CD. Ethernet layer 2 Layer 2 functions, NICs, MAC addresses, unicasts, multicasts and broadcasts, frame formats. Hands on: Configuring NICs, Analysing MAC addresses with Wireshark IP and Ethernet Relationship Hands on: ARP. What is a switch? Switches connect multiple devices, switches versus hubs, simultaneous conversations, switches work at layer 2, the forwarding database, how the forwarding database is built, broadcast and collision domains Hands on: Difference between hubs and switches. Switch configuration Switch configuration Managed/unmanaged switches, configuration methods, reasons to configure switches. Console ports, HyperTerminal (and alternatives). Hands on: Using the console port to troubleshoot and configure switches. Switches in more detail Latency, forwarding mechanisms, switch fabrics. Hands on: Using telnet and HTTP to switches. Ethernet extensions Auto negotiation, Power over Ethernet. Hands on:Configuring and troubleshooting switch ports: Speed, duplex and security. Redundant links Loops, broadcast storms, STP, BPDU format, STP convergence. Hands on: Tracking blocked ports. STP convergence. Backbone links Architectures, link aggregation, LACP, load sharing, resilience. Hands on: fail over times. VLANs Virtual versus physical LANs, Why have VLANs? Broadcast domains, Creating VLANs, Assigning ports to VLANs. Hands on: Analysing the effect of VLANs on traffic. Enterprise VLANs VLANS are internal, multiple VLANs, Load balancing, Default VLAN, VLAN registration protocols: VTP, GVRP, MVRP. Hands on: VLANs on multiple switches. Tagging/Trunking Reason for tagging, terminology, tagging process, 802.1Q, Tag format, VLAN stacking. Hands on: Configuring and troubleshooting tags. STP variants RSTP, Common STP, Multiple STP, PVST, ring alternatives. Hands on: RSTP. Inter VLANs Layer 3 switching, IP addressing rules, Interconnecting VLANs. Hands on: Routing between VLANs. Troubleshooting Ethernet Methods, tools, locating faults, layer 1 issues, layer 2 issues Hands on: Fixing the network.
5G training course description This course is designed to give the delegate an understanding of the technologies and interworking requirements of the next generation of cellular communications. It is not a definitive set of descriptions but a possibility of the final deployment. During the course we will investigate the 10 pillars for 5G, which will include various Radio Access Technologies that are required to interwork smoothly. Hence we will look at the 4G Pro features and other RATs. What will you learn List the ten pillars of 5G deployment. Explain the 5G Internet and Software Distributed Networks (SDN). Explain carrier aggregation, the mobile cloud and RAT virtualisation. Explain an overall picture of 5G architecture. 5G training course details Who will benefit: Anyone who is looking to work with next generation networks. Prerequisites: Mobile communications demystified Duration 3 days 5G training course contents Drivers for 5G 5G Road Map, 10 Pillars of 5G, evolving RATs, small cell, o SON, MTCm, mm-wave, backhaul, EE, new spectrum, spectrum sharing, RAN virtualisation. 4G LTE advanced features *MIMO, Downlink & uplink MIMO R8, MIMO technology in LTE advanced, Downlink 8-layer SU-MIMO, Downlink MU-MIMO, Uplink MU-MIMO, Uplink transmit diversity, Coordinated multi-point operation (CoMP), Independent eNB & remote base station configurations, Downlink CoMP, * Uplink Multi-Cell Reception. ICIC & eICIC ICIC, Homogeneous to heterogeneous network, eICIC, Macro-pico scenario, Macro-femto scenario, Time orthogonal frequencies. Almost Blank Subframe (ABS). Carrier aggregation Component carriers (CC), * CC aggregation, Intra-band contiguous solutions, Intra-band non-contiguous solutions, Inter-band non-contiguous solutions, CA bandwidth classes, Aggregated transmission bandwidth configurations (ATBC), Possible carrier aggregation configurations (Rel 9, 10 & 12). Enhanced Interference Mitigation & Traffic Adaptation (eIMTA) TDD UL-DL reconfiguration for traffic adaptation, Reconfiguration mechanisms, Interference mitigation schemes, Dynamic & flexible resource allocation. 5G architectures 5G in Europe, horizon 2020 framework, 5G infrastructure PPP, METIS project, innovation centre, 5G in North America, research, company R & D, 5G specifications. The 5G internet Cloud services, IoT & context awareness, network reconfiguration & virtualization support, hypervisors, SDN, the controller, service-oriented API, OpenFlow switches, SDN operation, SDN control for traffic flow redirection, OpenFlow controllers, how SDN works, application, control and infrastructure layers, a programmable network, how SDN & NFV tie together, SDN's downside, SDN orchestration, Mobility, architectures for distributed mobility management, MEDIEVAL & MEDIVO projects, a clean slate approach, mobility first architecture, network virtualization (VNet), INM, NetInf, ForMux, MEEM, GP & AM, QoS support, network resource provisioning, IntServ, RSVP, DiffServ, CoS, aggregated resource provisioning, SICAP, MARA, Emerging approach for resource over-provisioning, example use case architecture for the 5G internet, integrating SDN/NFV for efficient resource control, control information repository, service admission control policies, network resource provisioning, control enforcement functions, network configurations, network operations. Small cells for 5G Average spectral efficiency evolution, What are small cells? WiFi & Femto cells as candidate small-cell technologies, Capacity limits & achievable gains with densifications, gains with multi-antenna techniques, gains with small cells, Mobile data demand, approach & methodology, subscriber density projections, traffic demand projections, global mobile data traffic increase modelling, country level backhaul traffic projections, 2020 average spectrum requirement, Small cell challenges, backhaul, spectrum, automation. Cooperation for next generation wireless networks Cooperative diversity & relaying strategies, Cooperative ARQ & MAC protocols, NCCARQ & PRCSMA packet exchange, Physical layer impact on MAC protocol, NCCARQ overview, PHY layer impact, Performance evaluation, simulation scenario and results. Mobile clouds; technology & services for future communications platforms Mobile cloud, software, hardware and networking resources, Mobile cloud enablers, mobile user domain, wireless technologies, WWAN WLAN and WPAN range, Bluetooth, IEEE.802.15.4, software stacks, infrared, near field communications (NFC), store & forward vs compute & forward, random/linear network coding. Security for 5G communications Potential 5G architectures, Security issues & challenges in 5G, user equipment, mobile malware attacks, 5G mobile botnets, attacks on 4G networks, C-RNTI & packet sequence numbers based UE location tracking, false buffer status reports attacks, message insertion attacks, HeNB attacks, physical attacks, attacks on mobile operator's network, user data & identity attacks, DDoS attacks, amplification, HSS saturation, external IP networks.
IPsec training course description This hands on course focuses on IPsec VPNs. Rather than focusing on one implementation this course concentrates on the technologies and protocols of IPsec. Starting with an overview of the complete IPsec architecture the course then moves onto ESP packet analysis along with encryption and authentication provided. IKEv1 and IKEv2 are both covered in detail. Having covered IPsec with pre shared keys the course then moves onto IPsec with certificates followed by IPsec issues. The course is vendor neutral with hands on with both Cisco and Microsoft implementations. What will you learn Explain how IPsec works. Explain the role of AH, ESP and IKE. Configure IPsec. Troubleshoot IPsec. IPsec training course details Who will benefit: Technical staff working with IPsec. Prerequisites: Definitive IP VPNs for engineers. Duration 3 days IPsec training course contents What is IPsec? How to spell IPsec, IPsec is IP security, confidentiality, integrity, authenticity, replay protection, what is a VPN? Network layer security, IPsec and IPv4, IPsec and IPv6, the suite of protocols, the standard, IPsec RFCs, IPsec history. Hands on Analysis of 'normal' IP packets. IPsec architecture The IPsec protocols, AH vs ESP, Why two headers? transport mode, tunnel mode, Remote access VPNs, site to site VPNs, security associations, SA database, Security Parameters Index, implementations: Host tack, Bump in the Stack, Bump in the Wire. Hands on Configuring IPsec. AH What AH does, the stack, The AH header, What is authenticated? Device authentication. AH in transport mode, AH in tunnel mode. Hands on AH packet analysis. ESP What ESP does, the ESP header, ESP in transport mode, ESP in tunnel mode, ESP and SA, ESP and SPI. Hands on ESP packet analysis, policy configuration. IPsec encryption IPsec is a framework, standard algorithms, ESP keys, the role of IKE, key lifetimes, how IKE generates the keys, DES, 3DES, AES, cipher block chaining, counter mode, other encryption. Hands on Encryption configuration. IPsec authentication Authentication types, IPsec authentication, Authentication algorithms: MD5, keyed SHA-1, HMAC-MD5, HMAC-SHA-1, HMAC-RIPEMD, other authentication algorithms. Hands on Authentication configuration. IKE Internet Key Exchange, IKE and the SAD, the two phase negotiation, ISAKMP, ISAKMP header, pre shared keys, digital signatures, public key encryption, Diffie Hellman, proposals, counter proposals, nonces, identities, phase 1 negotiation: main mode, aggressive mode, base mode. Phase 2 negotiation: quick mode, new group mode. Hands on IKE packet analysis. More IKE PFS, IKE and dynamic addresses, XAUTH, hybrid authentication, CRACK, ULA, PIC. User level authentication. IKE renegotiation, heartbeats. Hands on Troubleshooting IPsec. IKEv2 The IKEv2 exchange, IKE_SA_INIT, IKE_AUTH, CREATE_CHILD_SA, IKEv2 packets, the informational exchange. Comparing IKev1 vs IKE v2. Hands on IKEv2 configuration and analysis. PKI What is PKI?, Digital certificates, Certificate authorities, CA servers, RA, VA, certificates, CA hierarchy, CRLs, certificate formats. Hands on installing and configuring certificate servers. IPsec issues NAT, IPsec overhead and fragmentation. Summary IPsec strengths and weaknesses. Where to get further information.