NTP and PTP training course description This course looks at timing and synchronization as provided by NTP and PTP. Hands on sessions primarily involve using Wireshark to analyse the protocols. What will you learn Recognise the importance of timing and synchronisation. Explain how NTP works. Explain how PTP works. NTP and PTP training course details Who will benefit: Anyone using NTP or PTP but particularly relevant for those in the broadcast industry. Prerequisites: TCP/IP foundation for engineers Duration 1 day NTP and PTP training course contents Introduction Clock drift. Timing and synchronization. Importance in computing. Importance in broadcasting. NTP NTP versions, v0 to v4. Architecture. The intersection algorithm. Accuracy. Clock strata, Stratum 0, 1, 2 and 3. Protocol modes. Hands on NTP configuration More NTP NTP packet header. Timestamps. Variables in the header. Clock synchronization algorithm. SNTP. The Windows Time service. Hands on Wireshark and NTP analysis. PTP PTP v2, IEEE 1588. Architecture. Accuracy. Synchronization with PTP. Offset and delay. Hands on Analysing PTP packet flows. More PTP Ordinary clocks, boundary clocks, masters and grandmasters. PTP specific switch types. Hardware time stamping. SMPTE ST2059-2. PTP packet header. PTP domains. Best master clock algorithm. Hands on More Wireshark and PTP.
Duration 4 Days 24 CPD hours This course is intended for This in an intermediate-level Java development course geared for students experienced with Java and Spring programming essentials. This course does not cover Java or Spring development basics. Overview Working within in an engaging, hands-on learning environment, guided by our expert team, attendees will: Understand the ReactiveX specification Understand the basics of Reactive Programming Discuss the advantages and limitations of Observables Write a client application capable of handling Reactive events Apply operators to event streams to filter, modify and combine the objects emitted by event publishers Select the appropriate type of Event Source Use both Cold and Hot Observables Deal with backpressure problems in reactive programming Develop a reactive web application using Spring WebFlux Define application flows of a WebFlux application Use the WebClient API to work with both synchronous and streaming APIs Develop Unit and Integration tests to test WebFlux endpoints Creating a reactive REST endpoint Become familiar with the basics of WebSockets Create a WebSocket endpoint using Spring Create a WebSocket client Understand the basics of NoSQL Become familiar with the basics of MongoDB Understand how the data in MongoDB can be retrieved using a Reactive API Define Spring Data MongoDB repositories Query the MongoDB using Spring Data Define a reactive repository using MongoDB Explore the Spring Data R2DBC API to perform reactive CRUD operations against a relational database Spring Data reative allow us to implement database operations relying on Reative Programming APIs. While the Spring R2DBC initiative aims to bring reactive programming to relational databaes, several NoSQL databases already provide this possibility. After an introduction to NoSQL and the MongoDB, this courses covers the APIs available to communicate with this NoSQL database using both blocking and reactive APIs.Introdcution to Reactive Spring is a comprehensive Java training workshop geared for experienced developers who wish to explore concurrent, asynchronous and reactive programming APIs and techniques using Spring. After an introduction to reactive programming, Reactive Streams and the Project Reactor APIs, this course will show how this APIs are integrated into Spring. Spring 5 includes Spring WebFlux, providing a reactive programming model for web applications, including support for Reactive REST APIs. Spring WebSocket assists in the creation of web applications which provide a full-duplex, two-way communication between client and server. Introduction to Reactive Programming Reactive Manifesto Introduce ReactiveX ReactiveX implementations The Observer, Iterator pattern and functional programming Discuss hot and cold publishers Reactive Streams API Introduce the Reactive Streams specification Publisher and Subscribers java.util.concurrent.Flow Transformation of Messages (Processor) Controlling messages Tutorial: Setup Eclipse for Using Maven Introduction Introduce the Reactor Building blocks Flux and Mono Creating observables Subscribing to a stream Testing Event Sources (introduction) Testing reactive implementations StepVerifier : test sequence of emitted items Defining expectations TestPublisher: produce test data to test downstream operators Reactive Operators Introduce Operators Show the use of marble diagrams Explain some commonly used operators Callback operators Schedulers (Multithreading) Thread usage of subscriber and consumer Using the subscribeOn method Introduce the Scheduler interface Using the observeOn method Backpressure Strategies for dealing with Backpressure ?reactive pull? backpressure Exception Handling Handling errors in onError Exception handling strategies Using onErrorReturn or onErrorNext operators Using the retry operators The Global Error Handler Spring Data Review Quick review of Spring Data repositories Query return types Defining Query methods Pagination and sorting R2DBC Reactive Relational Database Connectivity DatabaseClient Performing CRUD operations Reactive Query annotated methods Spring WebFlux: Introduction Annotated Controllers Functional Endpoints WebFlux configuration Creating a reactive REST endpoint Defining flows Defining the application flow Actions Defining decision Navigating flows RouterFunction View Technologies View technologies Using Thymeleaf to create the view View Configuration Spring WebClient: Introduction to WebClient Working with asynchronous and streaming APIs Making requests Handling the response Lab: WebClient WebTestClient Testing WebFlux server endpoints Testing controllers or functions Define integration tests Introduction to Spring Reactive WebSockets Be familiar with the basics of WebSockets Understand the HTTP handshake and upgrade Name some of the advantages of WebSockets Defining the WebSocket WebSocket Message Handling WebSocketSession Implementing the WebSockethandler Creating a Browser WebSocket Client WebSocket STOMP Streaming (or Simple) text-orientated messaging protocol Introduce SockJS Connecting to the STOMP endpoint Configuring the message broker STOMP destinations Reactive WebSocket Reactive WebSocket support Implement the reactive WebSocketHandler BigData Introduce Big Data Explain the need for enhanced data storage Introduction to MongoDB JavaScript Object Notation Overview Introduce Binary JSON (BSON) Starting the database Creating Collections and Documents Executing ?simple? database commands Introduce the ObjectID Searching for documents using query operators Updating and deleting documents MongoDB Compass Spring and MongoDB MongoDB Support in Spring Data MongoClient and MongoTemplate Spring Data MongoDB configuration @EnableMongoRepositories Adding documents to the database The @Document and @Field annotations Polymorphism and the _class property The Criteria object Spring Data MongoDB MongoRepository Field naming strategy Using JSON queries to find documents The @PersistenceConstructor annotation Reactive Repositories with MongoDB Using reactive repositories ReactiveMongoTemplate RxJava or Reactor Additional course details: Nexus Humans Introduction to Reactive Spring (TT3355 ) training program is a workshop that presents an invigorating mix of sessions, lessons, and masterclasses meticulously crafted to propel your learning expedition forward. This immersive bootcamp-style experience boasts interactive lectures, hands-on labs, and collaborative hackathons, all strategically designed to fortify fundamental concepts. Guided by seasoned coaches, each session offers priceless insights and practical skills crucial for honing your expertise. Whether you're stepping into the realm of professional skills or a seasoned professional, this comprehensive course ensures you're equipped with the knowledge and prowess necessary for success. While we feel this is the best course for the Introduction to Reactive Spring (TT3355 ) course and one of our Top 10 we encourage you to read the course outline to make sure it is the right content for you. Additionally, private sessions, closed classes or dedicated events are available both live online and at our training centres in Dublin and London, as well as at your offices anywhere in the UK, Ireland or across EMEA.
Regular expressions training course description Regular expressions are an extremely powerful tool for manipulating text and data. They are now standard features in a wide range of languages and popular tools, including Python and MySQL. Regular expressions allow you to code complex and subtle text processing that you never imagined could be automated. Once you've mastered regular expressions, they'll become an invaluable part of your toolkit. You will wonder how you ever got by without them. What will you learn Use Regular Expressions. Troubleshoot Regular Expressions. Compare RE features among different versions. Explain how the regular expression engine works. Optimize REs. Match what you want, not what you don't want. Regular expressions training course details Who will benefit: Anyone looking to use regular expressions. Prerequisites: None. Duration 1 day Regular expressions training course contents Introduction to Regular Expressions Solving real problems, REs as a language, the filename analogy, language analogy, RE frame of mind, searching text files: egrep, egrep metacharacters, start and end of the line, character classes, matching any character with dot, alternation, ignoring differences in capitalization, word boundaries, optional items, other quantifiers: repetition, parentheses and backreferences, the great escape, expanding the foundation, linguistic diversification, the goal of a RE, more examples, RE nomenclature, Improving on the status quo. Extended introductory examples A short introduction to Perl, matching text with regular expressions, toward a more real-world example, side effects of a successful match, Intertwined regular expression, intermission, modifying text with regular expressions, example: form letter, example: prettifying a stock price, automated editing, a small mail utility, adding commas to a number with lookaround, text-to-HTML conversion, that doubled-word thing. Regular expression features and flavours The regex landscape, origins of REs, care and handling of REs, Integrated handling, procedural and object-oriented handling, search-and-replace example. strings character encodings and modes, strings as REs, character-encoding issues, unicode, regex modes and match modes, common metacharacters and features, character representations, character classes and class-like constructs, anchors and other 'zero-width assertions', comments and mode modifiers, grouping capturing conditionals and control. The mechanics of expression processing Two kinds of engines, new standards, regex engine types, from the department of redundancy department, testing the engine type, match basics, about the examples, rule 1: the match that begins earliest wins, engine pieces and parts, rule 2: the standard quantifiers are greedy, regex-directed versus text-directed, NFA engine: regex-directed, DFA engine: text-directed, first thoughts: NFA and DFA in comparison, backtracking, two important points on backtracking, saved states, backtracking and greediness, more about greediness and backtracking, problems of greediness, multi-character 'quotes', lazy quantifiers, greediness and laziness, laziness and backtracking, possessive quantifiers and atomic grouping, possessive quantifiers ?, +, *+, ++ and {m,n}+, the backtracking of lookaround, is alternation greedy? taking advantage of ordered alternation, NFA DFA and posix, the longest-leftmost', posix and the longest-leftmost rule, speed and efficiency. Practical regex techniques Continuation lines, matching an IP address, working with filenames, matching balanced sets of parentheses, watching out for unwanted matches, matching delimited text, knowing your data and making assumptions, stripping leading and trailing whitespace, matching and HTML tag, matching an HTML link, examining an HTTP URL, validating a hostname, plucking a hostname, plucking a URL, parsing CSV files. Crafting an efficient expression Efficiency vs. correctness, localizing greediness, global view of backtracking, more work for POSIX NFA, work required during a non-match, being more specific, alternation can be expensive, benchmarking, know what you re measuring, benchmarking with Python, common optimisations, the mechanics of regex application, pre-application optimizations, optimizations with the transmission, optimization of the regex itself, techniques for faster expressions, common sense techniques, expose literal text, expose anchors, lazy versus greedy: be specific, split into multiple REs, mimic initial-character discrimination, use atomic grouping and possessive quantifiers, lead the engine to a match, unrolling the loop, observations, using atomic grouping and possessive quantifiers, short unrolling examples, unrolling C comments, the free flowing regex, a helping hand to guide the match, a well-guided regex is a fast regex.
Learn Project Benefits Management Step-by-Step A comprehensive process that covers every stage of Project and Program Benefits Management
Overview This comprehensive course on Complete iOS 11 and Swift 4 will deepen your understanding on this topic. After successful completion of this course you can acquire the required skills in this sector. This Complete iOS 11 and Swift 4 comes with accredited certification from CPD, which will enhance your CV and make you worthy in the job market. So enrol in this course today to fast track your career ladder. How will I get my certificate? You may have to take a quiz or a written test online during or after the course. After successfully completing the course, you will be eligible for the certificate. Who is This course for? There is no experience or previous qualifications required for enrolment on this Complete iOS 11 and Swift 4. It is available to all students, of all academic backgrounds. Requirements Our Complete iOS 11 and Swift 4 is fully compatible with PC's, Mac's, Laptop, Tablet and Smartphone devices. This course has been designed to be fully compatible with tablets and smartphones so you can access your course on Wi-Fi, 3G or 4G. There is no time limit for completing this course, it can be studied in your own time at your own pace. Career Path Learning this new skill will help you to advance in your career. It will diversify your job options and help you develop new techniques to keep up with the fast-changing world. This skillset will help you to- Open doors of opportunities Increase your adaptability Keep you relevant Boost confidence And much more! Course Curriculum 13 sections • 177 lectures • 19:08:00 total length •iOS 11 Course Overview: 00:11:00 •Install Xcode 9: 00:07:00 •Xcode 9 Beta 4 Update: 00:09:00 •App: Hustle - Your first iOS 11 App: 00:22:00 •Variables, operators, and how computers work: 00:17:00 •Strings in Swift: 00:15:00 •Working with numbers in Swift: 00:20:00 •Swift Functions: 00:23:00 •Booleans: 00:21:00 •Constants: 00:10:00 •Array Data Structure in Swift: 00:13:00 •Swift Loops: 00:19:00 •Dictionary Data Structure in Swift: 00:19:00 •Object Oriented Programming in Swift: 00:12:00 •Inheritance: 00:08:00 •Polymorphism: 00:08:00 •Optionals: 00:21:00 •Enumerations: 00:20:00 •Extensions: Part 1: 00:15:00 •Extensions: Part 2: 00:21:00 •Intro to Protocols, Delegates - Numbers Example: 00:13:00 •Intro to Protocols, Delegates Part 2 - Question Generator: 00:18:00 •Protocols, Delegates - Building Color Magic App UI: 00:17:00 •Protocols, Delegates - Using the Delegate Method in Color Magic App: 00:16:00 •Protocols, Delegates - Using Mutating Functions in Types: 00:18:00 •Git and Version Control - The Fun Way!: 00:12:00 •Terminal Basics - Changing Directories: 00:06:00 •Terminal Basics - Creating Directories and Files: 00:05:00 •Terminal Basics - Copying and Renaming Files: 00:09:00 •Terminal Basics - Deleting Files and Directories: 00:06:00 •Git Basics: 00:17:00 •Setting up Github: 00:05:00 •Working with Local and Remote Repositories: 00:11:00 •Handling Git Merge Conflicts: 00:17:00 •App: Swoosh 01 - Creating the Welcome Screen: 00:25:00 •App: Swoosh 02 - Working with Frames: 00:16:00 •App: Swoosh 03 - Intro to Auto Layout: 00:27:00 •App: Swoosh 04 - Working with Stack Views: 00:27:00 •App: Swoosh 05 - Intro to Segues (Changing Screens): 00:10:00 •App: Swoosh 06 - Refactoring in Xcode 9: 00:10:00 •App: Swoosh 07 - Debugging: setValue forUndefinedKey: 00:04:00 •App: Swoosh 08 - Programmatic Segues: 00:09:00 •App: Swoosh 09 - IBActions (Handling Events) and Data Models: 00:16:00 •App: Swoosh 10 - Passing Data Between View Controllers: 00:12:00 •App: Dev Profile 01 - Auto layout for iPhones: 00:22:00 •App: Dev Profile 02 - Auto layout for iPads (Size Classes): 00:20:00 •App: Window Shopper 01 - Custom Text Fields: 00:18:00 •App: Window Shopper 02 - Input Accessory Views: 00:15:00 •App: Window Shopper 03 - Unit Testing our Data: 00:17:00 •App: Window Shopper 04 - Calculation Algorithm: 00:13:00 •App: Window Shopper 05 - Custom Drawing with drawRect: 00:12:00 •App: Coder Swag 01 - Project creation: 00:23:00 •App: Coder Swag 02 - Tableviews, Delegate, and Data Source: 00:33:00 •App: Coder Swag 03 - Collection Views (Grid Layouts): 00:13:00 •App: Coder Swag 04 - Working with Data Models: 00:14:00 •App: Coder Swag 05 - Displaying Data in Collection View Cells: 00:20:00 •Intro to Chat App: 00:04:00 •App: Smack - Project Setup: 00:26:00 •App: Smack - SWReveal: 00:20:00 •App: Smack - ChannelVC UI: 00:25:00 •App: Smack - LoginVC UI: 00:22:00 •App: Smack - CreateAccountVC UI: 00:19:00 •App: Smack - Web request and API: 00:09:00 •App: Smack - Hosting API: 00:20:00 •App: Smack - Locally Hosting API: 00:18:00 •App: Smack - Creating a web request in Xcode: 00:28:00 •App: Smack - Registering a User: 00:16:00 •App: Smack - Logging in a user: 00:20:00 •App: Smack - Creating a user: 00:26:00 •App: Smack - Avatar Picker Part 1: 00:19:00 •App: Smack - Avatar Picker Part 2: 00:20:00 •App: Smack - Generate a Avatar BG Color: 00:26:00 •App: Smack - LoggedIn Interface: 00:23:00 •App: Smack - Profile View: 00:25:00 •App: Smack - Logging in users: 00:23:00 •App: Smack - Getting channels: 00:19:00 •App: Smack - Channels TableView: 00:14:00 •App: Smack - Add Channel VC: 00:19:00 •App: Smack - Sockets and Channels: 00:26:00 •App: Smack - Refining Login Flow: 00:19:00 •App: Smack - Fetching Messages: 00:20:00 •App: Smack - Sending First Message: 00:17:00 •App: Smack - Displaying Chat Messages: 00:18:00 •App: Smack - Sockets and Messages: 00:19:00 •App: Smack - Typing Users: 00:22:00 •App: Smack - Unread Channels: 00:18:00 •Where to go from here: 00:08:00 •I'm Back: 00:08:00 •Intro to App: Pixel City: 00:02:00 •Creating Xcode Project: Pixel City: 00:04:00 •Installing Alamofire / AlamofireImage Cocoapods: 00:07:00 •Building MapVC UI /Conforming to MKMapViewDelegate /Setting Delegate of mapView: 00:15:00 •Requesting Location Services in iOS 11 / Centering Map On User Location: 00:18:00 •Adding UITapGestureRecognizer to Drop Custom Pins on MapView: 00:15:00 •Setting a Custom Map Annotation Color: 00:05:00 •Animating Photos View / Programmatically adding spinner and label subviews: 00:20:00 •Adding UILabel for Pull Up View / Adding UICollectionView Programmatically: 00:17:00 •Getting API Key from Flickr / Using Flickr API URL Format: 00:14:00 •Using Alamofire to Download URLS: 00:21:00 •Using Alamofire to Download Images / Cancelling All Sessions: 00:16:00 •Setting Up UICollectionView / Adding Images / Reloading UICollectionView: 00:10:00 •Building PopVC / Presentation PopVC When UICollectionViewCell is Tapped: 00:16:00 •Adding 3D Touch Peek: 00:15:00 •Challenge 1: 00:02:00 •Setting up developer: 00:10:00 •Implementing Google AdMob: 00:19:00 •Fetching a list of Products: 00:15:00 •Starting an in-app Purchase: 00:09:00 •Testing in-app Purchases: 00:18:00 •Restoring in-app Purchases after App Deletion: 00:09:00 •Intro to App: GoalPost: 00:03:00 •Creating Xcode Project / Project Folders: 00:04:00 •Building GoalsVC: 00:14:00 •Building GoalCell: 00:14:00 •What is Core Data?: 00:06:00 •Creating Goal Core Data Entity and Attributes: 00:08:00 •Displaying Static GoalCells in UITableView / Creating GoalType Enum: 00:10:00 •Building CreateGoalVC: 00:15:00 •Creating a UIViewController Extension: 00:11:00 •Creating a UIView / UIButton Extension: 00:19:00 •Building FinishGoalVC / Passing Data from CreateGoalVC: 00:19:00 •Saving Goal Data to Persistent Store: 00:13:00 •Fixing Dismissal of FinishGoalVC: 00:07:00 •Fetching Data from Persistent Store / Filling UITableView with Fetched Data: 00:16:00 •Removing Objects from Persistent Store using UITableView Delete Action: 00:11:00 •Setting Goal Progress for UITableViewCell: 00:15:00 •Challenge 2: 00:01:00 •Intro to App: Breakpoint: 00:03:00 •Creating Xcode Project / Setting Up Project Folders: 00:05:00 •Creating Firebase Project: 00:11:00 •Setting Up DataService / Creating Firebase Database Users: 00:11:00 •Building AuthVC and LoginVC in Interface Builder: 00:18:00 •Creating InsetTextField and ShadowView Subclasses: 00:18:00 •Setting up AuthService: 00:13:00 •Building FeedVC and GroupsVC in Interface Builder: 00:16:00 •Presenting LoginVC from AppDelegate / Allowing Login with Email: 00:22:00 •Building MeVC and Adding to UITabBarController: 00:10:00 •Creating CreatePostVC and Uploading Posts to Firebase: 00:20:00 •Creating UIView Extension for Binding Views to Keyboard: 00:15:00 •Building FeedCell: 00:10:00 •Writing the Message Model and Getting All Feed Messages from Firebase: 00:21:00 •Converting UIDs into Emails and Reversing the Order of a TableView: 00:20:00 •Creating CreateGroupVC and Connecting @IBOutlets/Actions: 00:15:00 •Creating UserCell: 00:16:00 •Searching for Email Accounts to Add to Group: 00:19:00 •Adding Users to Group with didSelectRowAt indexPath: 00:21:00 •Creating Groups and pushing them to Firebase: 00:16:00 •Creating GroupCell: 00:15:00 •Creating Group Model and Getting All Groups from Firebase: 00:19:00 •Building GroupFeedVC: 00:18:00 •Initializing Group Data for a Group and Presenting on GroupFeedVC: 00:16:00 •Downloading All Message for a Group and Animating Upon New Message: 00:24:00 •Creating a UIViewController Extension for Presenting GroupFeedVC: 00:07:00 •Challenge 3: 00:02:00 •Intro to app: 00:02:00 •Intro to CoreML: 00:05:00 •What is machine learning?: 00:08:00 •Creating Xcode 9 project: 00:03:00 •Building UI: 00:18:00 •AVFoundation: 00:18:00 •Tap gestures to take snapshot on item: 00:11:00 •Core ML Xcode 9 Beta 4 Update / Fix Preview Photo Crash: 00:03:00 •Downloading CoreML models: 00:21:00 •Adding UI controls for flash control: 00:07:00 •Training your app to speak what it sees: 00:18:00 •App: RampUp - Intro to ARKit App: 00:02:00 •App: RampUp - Resources: 00:04:00 •App: RampUp - Project creation: 00:11:00 •App: RampUp - SceneKit, 3D models: 00:11:00 •App: RampUp - Ramp picker popover: 00:14:00 •App: RampUp - 3D models in SceneKit for popover: 00:18:00 •App: RampUp - 3D models in SceneKit for popover part 2: 00:12:00 •App: RampUp - Detecting taps on 3D objects: 00:17:00 •App: RampUp - Placing ramps in ARKit: 00:24:00 •App: RampUp - Moving objects in 3D space in augmented reality: 00:20:00 •ARKit - where to go next: 00:04:00 •Assignment - Complete iOS 11 and Swift 4: 00:00:00
Join us for this exciting opportunity to create your own bouquet of flowers - out of wire.
NodeJS allows you to build complex and powerful applications quickly and easily, writing JavaScript code. It also allows you to use JavaScript for web applications with flexibility for a wide range of different purposes. Learn about MongoDB as a database and how to build it as well as Express as a framework to build web apps on top of Node.js.
Stained Glass Flower Cutting For Mosaic Workshop. Beginners and Intermediates. Learn to cut and shape flowers in stained glass for glass mosaic.
BGP training course description A study of BGP for non engineers working in the Internet. The course starts with a review of the basics of routers and routing tables and then moves on to a simple overview of how BPG works with a focus on BGP metrics influencing the route traffic takes through the Internet. Hands on with routers follow the major sessions to reinforce the theory. Note these hands on sessions are more demonstrations by the trainer but some can be followed along and done by delegates (e.g. looking at Internet routing tables.) What will you learn Explain how routing tables influence Internet traffic. Describe how BGP works. Explain the methods BGP can use to influence Internet traffic. Use traceroute, peeringdb, route collectors and looking glasses to analyse traffic flows. Explain the difference between bi lateral and multilateral peering using a route server. BGP training course details Who will benefit: Non technical staff wishing to know more about BGP. Prerequisites: None. Duration 1 day BGP training course contents Networks, routers and routing tables What is a network, what is a router, routing tables, static routes, routing protocols. When an ISP uses static routes and when they use BGP. IP addresses, subnet masks, groups of IP addresses. IPv6. Hands on: Showing a full routing table. Seeing traceroute being used. Basic BGP What's BGP? BGP versus other routing protocols, ASs, AS numbers. RIPE database, peeringdb. Hands on: Finding AS numbers. Showing simple BGP configuration and routing tables in an EVENG example. How BGP works Simple walk through of BGP incremental updates and how routes change when links go down. Hands on: Showing packets and route changes when a link goes down/comes up. BGP path selection Transit, peering, routing policy and route filtering. Longest matching rule in routing tables, route selection order, Local preference, AS prepend, MEDs. Hands on: Seeing BGP influencing traffic. Looking at peering policies in RIPE and peeringdb. Route servers What are route servers? LINX route servers, route server policy control and communities, What are route collectors, Looking glasses. Hands on: Seeing the LINX route server details in peeringdb, using a looking glass.