# Sitemap

A list of all the posts and pages found on the site. For you robots out there is an XML version available for digesting as well.

## Markdown

This is a page not in th emain menu

## CS 219: Network Verification - Course Review

Published:

George is a fantastic teacher with very attractive lectures. I think his secret sauces include the following:

• Look at everything from different views: Zoe (ζωή, big picture) versus Bios (βίος, details).
• Selectively focus on the most important techniques and examples, ignoring unnecessary points. Students can feel that they learned a lot without remembering too much boring concepts.
• Have his own methodologies on creative process. Students can experience those “Aha” times when following his introduction.

## Authentication and Authorization

Published:

Authentication (AuthN, 認証) and authorization (AuthZ, 承認) are important pieces in system security. In one word, AuthN verifies the identity of the requester, and AuthZ decides whether a specific operation is allowed.

## MATH 220BC: Mathematical Logic - Course Review

Published:

This is a review and summary for course MATH 220BC, given by Professor Artem Chernikov and Andrew Marks.

## MATH 206A: Combinatorics - Course Review

Published:

This is a review and summary for course MATH 206A Combinatorics at UCLA, given by Prof. Igor Pak.

## Polynomial Algorithms

Published:

This post introduces some tricks on polynomials widely used in ICPC. I will try to practice algebraic knowledge as well.

## Chess Picking Problem

Published:

Rephrase the chess picking problem in a more formal way.

## Algebra Miscs

Published:

Misc things that are taught in class but not written in the note of MATH 210.

## POJ3557 Map Generator

Published:

Discuss POJ3557 Map Generator and its variants.

## Residue Theorem and its Application

Published:

This post makes notes on residue theorem and its application, since most non-mathematicians only need to remember this after learning complex analysis. Some definitions may be not defined very rigorously from a complex analysis view.

## LIS and network flow

Published:

This post discusses Longest Increasing Subsequence (LIS) and network flow problem.

## Stability of DLedger

Published:

In this post I want to analyze the stability of Dledger, a DAG-based distributed logging system.

## Service Invocation: A Brief Survey

Published:

Service invocation is tricky. The protocol itself seems to be super simple: we call a function, and it returns. But the problem is, when the function is on another machine, how we know the state of that machine / the whole system. The developers of the caller do not want to care, so we protocol designers should care for them. But trying to make everyone happy is so tough here.

## Service Discovery: A Survey

Published:

There is always a need for service discovery and load balancing, but no universal solution. Sometimes naive ways may satisfy most needs.

## Confusing Terms

Published:

I find that some terms are confusing.

## NDN API 1: Encoding

Published:

TL; DR: Reflection should be used for encoding or serilization.

## The sqrt thesis of mixing strategies

Published:

When solving a problem, it is common that we have two different strategies that fit in different cases. For example, one algorithm may have a better time complexity but uses more memory than the other. Or, one is fast when there are only a few of large objects, but the other works better when there are many small objects. However, I found that there usually exists a solution which is a naive mixture of the two strategies, and its performance will be the sqrt of the two.

Published:

ダウンロード

## Vehicle Instrument Recognition

Date: 2016

Code
This is a course project that reads the number indicated by a vehicle instrument. We use Kirsch and Sobel operators to sharpen the image, Otsu algorithm for thresholding, and RANSEC to detect the scale marks and the hand. We calculate the result based on the angle.

## Best Threshold in Ball Recognition

Date: 2016

Code
Threshold is widely used in RoboCup Middle Size League (MSL) for ball recognization. We proposed an algorithm to find the best threshold without manually tuning arguments. This is submitted to Science Challenge in RoboCup China Open 2016.

## RISC-V Vector Extension in Gem5

Date: 2018

Code Report
This is a course project for CS 251B. We modified gem5 simulator to support a subset of RISC-V vector extensions draft in system-call emulation mode. We also wrote some testing assembly & C code which can be run on a bare metal machine for evaluation.

## python-ndn: An NDN Client Library in Python

Date: 2019

Code Doc
A Named Data Networking client library with AsyncIO support in Python 3. It supports Python >=3.6 and PyPy3 >=7.1.1.

## NFD Configuration Manager

Date: 2019

Code
NFD Configuration Manager (NDN-FM) provides a graphical interface to increase the ease with which users can manage local instances of the NDN Forwarding Daemon (NFD) and other packet forwarders implementing the NFD Management Protocol: NDN-FM can monitor the status of the forwarder; create, update, and delete faces and routes; manage certificates; and run basic NDN debugging tools.

## NDN Lite: A Secure Home IoT System

Date: 2020

We tried to build a localized Home IoT system to enforce the security and empower end users.

## External Workload Support in Kubernetes

Date: 2020

Pull Request User Guide KEP(TBA)
Kubernetes has a well-rounded ecosystem for pods in the cluster. But it does not provide a standard interface for pods to interact with external workloads, such as VMs. This project proposed ExternalWorkload custom resource to represent workloads, provides pod to workload load balancing, and supports mixed backends for Services based on EndpointSlices. I have implemented a PoC demo, which is merged into GCE Ingress Controller. The KEP is being reviewed.

## DLedger: An IoT-Friendly Private Distributed Ledger System Based on DAG

Published in NDN Technical Report, 2019

A technical report on a distributed ledger system

Recommended citation: Zhiyi Zhang, Vishrant Vasavada, Xinyu Ma, and Lixia Zhang. 2019. DLedger: An IoT-Friendly Private Distributed Ledger System Based on DAG. Technical Report NDN-0068, Revision 1. https://named-data.net/publications/1902-09031/

## Evolving intelligent devices for the future via named data networking

Published in XRDS 26, 2019

As the numbers and capabilities of networked devices continue to grow, they will play an increasingly important role in daily life. Ensuring security and usability will be the first and foremost challenge; Named Data Networking can help address this challenge through localized trust, usable security, and autoconfiguration.

Recommended citation: Zhiyi Zhang, Edward Lu, Yu Guan, Tianxiang Li, Xinyu Ma, Zhaoning Kong, and Lixia Zhang. 2019. Evolving intelligent devices for the future via named data networking. XRDS 26, 1 (Fall 2019), 36–39. DOI:https://doi.org/10.1145/3351482 https://dl.acm.org/doi/10.1145/3351482

## A Pub/Sub API for NDN-Lite with Built-in Security

Published in NDN Technical Report, 2021

A technical report about NDN Lite PubSub

Recommended citation: Tianyuan Yu, Zhiyi Zhang, Xinyu Ma, Philipp Moll, Lixia Zhang. 2021. A Pub/Sub API for NDN-Lite with Built-in Security. Technical Report NDN-0071, Revision 1. https://named-data.net/publications/techreports/ndn-tr-0071-ndn-lite-pubsub/

## NDN Forwarder Manager: Improving the Usability of NDN Forwarders

Published in NDN Technical Report, 2021

A technical report about NDN Forwarder Manager

Recommended citation: Xinyu Ma, Eric Newberry, Lixia Zhang. 2021. NDN Forwarder Manager: Improving the Usability of NDN Forwarders. Technical Report NDN-0070, Revision 1. https://named-data.net/publications/techreports/ndn-tr-0070-1-ndnfm/

Published:

Published:

## UCLA CS 131 Programming Languages Permalink

TA, Paul Eggert, Fall 2019

## UCLA CS 131 Programming Languages Permalink

TA, Paul Eggert, Winter 2020

## UCLA CS 131 Programming Languages Permalink

TA, Paul Eggert, Spring 2020