Network Related Policy for HTCondor

Introduction

HTCondor is a software that evaluates the mechanisms and policies that support High Throughput Computing (HTC) on large collections of distributively owned computing resources. Current HTCondor system can match the submitted jobs and the available machines in the HTCondor pool in terms of the available computing resources. However, it does little integration and management of the network layer. Scheduling decisions in HTCondor are made without considering the underlying network capacities and conditions. It is highly possible that HTCondor may match submitted jobs with large input file to a remote node with little bandwidth. To handle this problem, we introduce the network related policy for HTCondor. We start with some user case examples, in which the network layer knowledge is taken into consideration when the users submit the jobs.

User Case Example

In this section, we demonstrate three possible user cases, in which the submitted jobs have specific network condition requirements. These user case examples will help the readers understand why HTCondor needs to incorporate network layer knowledge.

Job ClassAds

This section describes the corresponding Job ClassAds that advertises the user job's preferences and requirements. The list of Job ClassAds are demonstrated below:

Machine ClassAds

To make it possible for HTCondor to have network related policy integrated when scheduling submitted jobs, we also need to design the corresponding Machine ClassAds that adequately advertises its network related attributes. There are some repetitions or overlaps between the Machine Ad and Job Ad. For the purpose of completeness, we also list those attributes in this section. The list of Machine ClassAds are demonstrated below.

In the actual machine ad, the attributes should be prefixed with "Lark".

Network Related Policy

In this section, we talk about the network related policy for HTCondor. More accurately, we demonstrate the designed policies corresponding to the user case examples mentioned above in details.

The following three policies match the user case examples respectively: